Ben*_*hak 10 python firefox selenium
我想自动下载文件并将它们保存在目录中,一切都已完成,但firefox仍然保存用户下载文件夹中的文件,例如 C:\users\root\Downloads
PyWebBot类中的函数
@staticmethod
def FirefoxProfile(path, handlers):
from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList",1)
profile.set_preference("browser.download.manager.showWhenStarting",False)
profile.set_preference("browser.download.dir", path)
profile.set_preference("browser.download.downloadDir", path)
profile.set_preference("browser.download.defaultFolder", path)
profile.set_preference("browser.helperApps.alwaysAsk.force", False)
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", handlers)
profile.set_preference("pdfjs.disabled", True)
profile.update_preferences()
return profile
Run Code Online (Sandbox Code Playgroud)
然后
def setUp(self):
self.profile = PyWebBot.FirefoxProfile(config['downloads'], config['handlers'])
self.driver = webdriver.Firefox(self.profile)
...
...
Run Code Online (Sandbox Code Playgroud)
配置:
config['downloads'] = 'Q:/web2py_src/web2py/applications/internet2letter/private/testing/selenium/downloads'
config['handlers'] = 'application/pdf'
Run Code Online (Sandbox Code Playgroud)
eng*_*ree 16
有几种方法可以解决这个问题,
os.path.exists或os.isfileFirefox使用selenium驱动程序启动时,导航到about:config并检查查找browser.download.dir,以确保有更改.profile.set_preference(profile.set_preference("browser.download.folderList",2)具有2第二个参数,因为 0下载到桌面的1方式意味着下载到默认的"Downloads"目录,2意味着使用您在"browser.download.dir"中指定的目录.| 归档时间: |
|
| 查看次数: |
5283 次 |
| 最近记录: |