簡體   English   中英

使用Selenium Python下載CSV文件並刪除它

[英]Downloading csv file using selenium python and deleting it

是否可以使用selenium python下載csv文件,然后將其刪除,或者僅下載臨時文件?

這是我用來下載csv文件的代碼

fp = webdriver.FirefoxProfile()

fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir", os.getcwd())
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/csv,text/csv,application/pdfss, text/csv, application/excel")

fp.set_preference("pdfjs.disabled", True)

browser = webdriver.Firefox(firefox_profile=fp)

您可以提及文件的路徑,然后使用os.remove()刪除/刪除文件。

編輯:如果您希望獲取已下載文件的名稱(我認為硒尚未添加此功能),您可以嘗試使用os.listdir()在下載文件之前和之后檢查目錄列表中的差異os.listdir()

import os

before = os.listdir('/home/jason/Downloads')

# Download the file using Selenium here

after = os.listdir('/home/jason/Downloads')
change = set(after) - set(before)
if len(change) == 1:
    file_name = change.pop() #file name stored as string
else:
    print "More than one file or no file downloaded"

我添加了一行代碼,以下解決方案有效

import os

before = os.listdir('/home/jason/Downloads')

# Download the file using Selenium here

after = os.listdir('/home/jason/Downloads')
change = set(after) - set(before)
if len(change) == 1:
    file_name = change.pop() #file name stored as string
    os.remove(file_name) 
else:
    print "More than one file or no file downloaded"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM