使用硒,我能夠自動下載zip文件並將其保存到指定的目錄。然而,當我嘗試解壓文件時,我遇到了一個難以找到最近下載的文件的障礙。如果有幫助,這是代碼相關的下載和解壓過程塊:Python - 找不到下載的文件解壓縮
# Click on Map Link
driver.find_element_by_css_selector("input.linksubmit[value=\"▸ Map\"]").click()
# Download Data
driver.find_element_by_xpath('//*[@id="buttons"]/a[4]/img').click()
# Locate recently downloaded file
path = 'C:/.../Download'
list = os.listdir(path)
time_sorted_list = sorted(list, key=os.path.getmtime)
file_name = time_sorted_list[len(time_sorted_list)-1]
具體來說,這是我的錯誤:
Traceback (most recent call last):
File "C:\Users\...\AppData\Local\Continuum\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 2881, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-89-3f1d00dac284>", line 3, in <module>
time_sorted_list = sorted(list, key=os.path.getmtime)
File "C:\Users\...\AppData\Local\Continuum\Anaconda3\lib\genericpath.py", line 55, in getmtime
return os.stat(filename).st_mtime
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'grid-m1b566d31a87cba1379e113bb93fdb61d5be5b128.zip'
我試圖刪除它,並把另一個代碼故障排除文件在目錄中,我能夠找到隨機文件,但不能找到最近下載的文件。誰能告訴我這裏發生了什麼?
首先,當你使用'lists'時,不要使用'list'作爲你的變量名稱。這可能會導致命名空間問題。其次,'os.listdir'不會列出完整路徑。所以你需要在'os.listdir(path)]'中用'file_list = [os.path.join(path,f)'替換'list = os.listdir(path)''。 – Abdou
另外,用'[-1]'替換'[len(time_sorted_list)-1]'。 –
Dupe:https://stackoverflow.com/q/29159824/2988730 –