这个硒火狐配置文件下载文件到自定义文件夹有什么问题?
问题描述:
我使用selenium和python v3.6自动化firefox将文件下载到自定义文件夹中。该文件夹的位置是C:/Users/username/Dropbox/Inv/
。这个硒火狐配置文件下载文件到自定义文件夹有什么问题?
下面是我的firefox个人资料。
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.folderList', 2) # custom location
profile.set_preference('browser.download.manager.showWhenStarting', False)
profile.set_preference('browser.download.dir', 'C:/Users/username/Dropbox/Inv/')
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'text/plain')
profile.set_preference('browser.helperApps.neverAsk.openFile', 'text/plain')
目前,该文件总是下载到默认文件夹C:\Users\username\Downloads
。如何获取下载的文件夹位置为C:/Users/username/Dropbox/Inv/
?
答
我会回答我的问题。问题在于指定下载目录的字符串。我应该使用\\
而不是/
。
profile.set_preference('browser.download.dir', 'C:\\Users\\username\\Dropbox\\Inv')
该代码已被验证为现在可以使用。
答
您需要使用profile
同时启动Firefox:
driver = webdriver.Firefox(firefox_profile = profile)
检查8.4. How to auto save files using custom Firefox profile ?硒文档常见问题解答。
这是链接中的例子:
import os
from selenium import webdriver
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/octet-stream")
browser = webdriver.Firefox(firefox_profile=fp)
browser.get("http://pypi.python.org/pypi/selenium")
browser.find_element_by_partial_link_text("selenium-2").click()
+0
感谢您的帮助,但我没有足够的积分来upvote。 – user1315789
可能的重复[下载并保存多个csv文件使用硒和弹出窗口中的python](https://*.com/questions/45097302/download-and-save-multiple-csv-files-using-selenium-and -python-from-popup) – DebanjanB