我有一个自动化脚本,在最近的mozilla更新之前运行良好。 selenium-python脚本自动执行我的一些浏览器操作,并将某些报告(csv)保存到定义的位置。
我一直在使用selenium 2.53.6,它使用以下代码:
profile = webdriver.firefox.firefox_profile.FirefoxProfile()
profile.set_preference('browser.helperApps.neverAsk.saveToDisk',"text/csv, application/pdf,application/octet-stream")
profile.set_preference('browser.download.folderList',2)
profile.set_preference("browser.download.manager.showWhenStarting",False)
profile.set_preference('browser.download.dir','D:\Downloads')
driver = webdriver.Firefox(firefox_profile=profile)
目前我使用selenium-python 3.0.1和Firefox 48.这里我添加了geckodriver路径到环境变量,并且能够使用以下代码启动firefox:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
caps = DesiredCapabilities.FIREFOX
caps["marionette"] = True
driver = webdriver.Firefox(capabilities=caps)
我很好奇如何在firefox-marionette驱动程序中执行profile.set_preference
等效操作。我无法找到任何文件。
请告知。
答案 0 :(得分:1)
您也可以将profile
传递给FirefoxDriver
,因为: -
driver = webdriver.Firefox(capabilities=caps, firefox_profile=profile)
您也可以将firefox_profile
设置为capabilities
: -
caps["firefox_profile"] = profile
driver = webdriver.Firefox(capabilities=caps)