Python为Selenium设置Firefox首选项-下载位置

我使用Selenium Marrionette和GeckoDriver提取Web数据。我使用以下设置我的Firefox配置文件首选项:

fp = webdriver.FirefoxProfile()

fp.set_preference("browser.download.folderList", 1)

fp.set_preference("browser.helperApps.alwaysAsk.force", False)

fp.set_preference("browser.download.manager.showWhenStarting",False)

fp.set_preference("browser.download.dir", "H:\Downloads")

fp.set_preference("browser.download.downloadDir","H:\Downloads")

fp.set_preference("browser.download.defaultFolder","H:\Downloads")

binary = FirefoxBinary(r'C:\Program Files (x86)\Mozilla Firefox\Firefox.exe')

firefox_capabilities = DesiredCapabilities.FIREFOX

firefox_capabilities['marionette'] = True

driver = webdriver.Firefox(capabilities=firefox_capabilities, firefox_binary=binary, firefox_profile = fp)

从我阅读了无法设置firefox配置文件首选项和将FirefoxProfile传递给FirefoxDriver的知识后,我发现firefox_profile现在使用时似乎什么也没做。因此,我需要对实施新的更新firefox_capabilities,但是我不确定如何确切地做到这一点。有任何想法吗?

回答:

好吧,我相信我终于弄明白了。我使用以下代码,而不是上面的代码,该代码指向我的Firefox配置文件文件夹(如果您需要更新默认的配置文件设置,请在运行此代码之前在Firefox中执行此操作):

from selenium.webdriver.firefox.options import Options

binary = FirefoxBinary(r'C:\Program Files (x86)\Mozilla Firefox\Firefox.exe')

fp = (r'C:\Users\username\AppData\Roaming\Mozilla\Firefox\Profiles\oqmqnsih.default')

opts = Options()

opts.profile = fp

firefox_capabilities = DesiredCapabilities.FIREFOX

firefox_capabilities['marionette'] = True

driver = webdriver.Firefox(capabilities=firefox_capabilities,firefox_binary=binary, firefox_options = opts)

我同时运行了此代码和网络抓取代码,然后单击“导出CSV”链接,它自动下载,而不是弹出“下载管理器”窗口。随时添加任何反馈。

以上是 Python为Selenium设置Firefox首选项-下载位置 的全部内容, 来源链接: utcz.com/qa/404542.html

回到顶部