Передача профиля firefox удаленному экземпляру webfriver firefox не работает
Я пытаюсь запустить удаленный экземпляр веб-драйвера Firefox и передать профиль.
profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList","2")
self.webdriver = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.FIREFOX,browser_profile=profile)
Это не работает. Если я передам его в экземпляр веб-драйвера Firefox, он будет работать нормально
profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList","2")
self.webdriver = webdriver.Firefox(firefox_profile=profile)
Есть ли ошибка? Я использую Firefox 9 и Selenium 2.16
2 ответа
Решение
Так что это была либо ошибка с Selenium, либо Firefox, которая была исправлена. Проблема в том, что browser.download.folderList является целым числом, поэтому я изменил его 2 на int, и он работает
Мой звонок с Selenium 2.39.0 выглядит немного иначе, чем выше. Отметьте "browser_profile" в качестве ключа для вызова.Remote вместо "firefox_profile", использованного выше.
profile = webdriver.FirefoxProfile()
profile.accept_untrusted_certs = True
executor = "https://" + \
self.env.getSeleniumHub()['ip'] + \
":4444/wd/hub"
capabilities = self.env.getSeleniumCapabilities("firefox")
self.driver = webdriver.Remote(
browser_profile=profile,
desired_capabilities=capabilities,
command_executor=executor)
self.driver.implicitly_wait(10)