Selenium / Python - сообщение «Невозможно найти соответствующий набор возможностей» со старыми версиями Firefox (31.8.0esr) - PullRequest
0 голосов
/ 15 июня 2019

Мне нужно использовать FF31esr с селеном / питоном в Debian. Когда я все делаю с FF60esr - все работает, но когда я переключаюсь на FF31esr, я получаю эту ошибку:

selenium.common.exceptions.SessionNotCreatedException: Сообщение: Невозможно найти соответствующий набор возможностей

Я использую Debian9 linux, последние версии Selenium и Geckodriver, Python3.5 Firefox 60.7.0esr по умолчанию установлен на debian, я скачал и распаковал Firefox31.8.0 to /opt/firefox-31.8.0esr/

Итак, этот код работает нормально (запускается FF60esr)

from selenium import webdriver
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 600))
display.start()
driver = webdriver.Firefox()
driver.get('http://google.com')
print(driver.title)
driver.quit()
display.stop()

Но когда я выполняю этот код:

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 600))
display.start()
binary = FirefoxBinary('/opt/firefox-31.8.0esr/firefox')
driver = webdriver.Firefox(firefox_binary=binary)

тогда я получил:

selenium.common.exceptions.SessionNotCreatedException: Сообщение: невозможно найти соответствующий набор возможностей

Я нашел здесь в StackOverflowрешение с использованием DesiredCapabilities - cap["marionette"] = False - но оно не работает для меня, я делаю:

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 600))
display.start()
cap = DesiredCapabilities().FIREFOX
cap["marionette"] = False
binary = FirefoxBinary('/opt/firefox-31.8.0esr/firefox')
browser = webdriver.Firefox(capabilities=cap, firefox_binary=binary)

и получил еще одну ошибку :

selenium.common.exceptions.WebDriverException: Сообщение. Похоже, что браузер завершил работу, прежде чем мы смогли подключиться.Если вы указали log_file в конструкторе FirefoxBinary, проверьте его для получения подробной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...