Проблема с запуском Firefox (python, geckodriver)

Добрый день!
Сразу оговорюсь, что я только-только начал познавать selenium и задачи я придумываю сам себе, поэтому не ругайте. Задача следующая, подбирать пароли на форму авторизации в интерактиве (с показательным запуском браузера) и c каждым следующим паролем запускать другой браузер (эмуляция некоего NAT). Так вот, если chromium driver запускается без проблем, то в случае с Firefox у меня возникли проблемы, конкретно с gecko.
Ниже предоставлен кусочек быдло-кода:

def ChooseDriver (drivername,urls,login):

    if drivername == 'Chrome':
        driver = webdriver.Chrome()
    else:
        fx_capabilities = DesiredCapabilities.FIREFOX
        fx_capabilities['marionette'] = True
        fx_capabilities['binary'] = "C:\\Program Files\\Mozilla Firefox\\firefox.exe"
        driver = webdriver.Firefox(capabilities = fx_capabilities)
    
    driver.get(urls)
    ....
geckodriver добавлен в path и в логах gecko следующее: geckodriver: Unknown option --port

Ну и вывод консоли:

D:\git_dir\top_100_passwd>main.py -u google.com -l admin
Traceback (most recent call last):
File “D:\git_dir\top_100_passwd\main.py”, line 78, in
instance.PasswordChekers()
File “D:\git_dir\top_100_passwd\main.py”, line 68, in PasswordChekers
CheckPassForm.ChooseDriver(‘Firefox’,self.urls, self.login)
File “D:\git_dir\top_100_passwd\main.py”, line 49, in ChooseDriver
driver = webdriver.Firefox(capabilities = fx_capabilities)
File “C:\Users\safe\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdr
iver\firefox\webdriver.py”, line 142, in init
self.service.start()
File “C:\Users\safe\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdr
iver\common\service.py”, line 96, in start
self.assert_process_still_running()
File “C:\Users\safe\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdr
iver\common\service.py”, line 109, in assert_process_still_running
% (self.path, return_code)
selenium.common.exceptions.WebDriverException: Message: Service geckodriver unexpectedly exited. Status code was: 2

Прошу поделится секретом запуска firefox, ну либо грамотной докой, которая бы расставила все на свои места.
Спасибо!

1 лайк

Первый раз вижу чтобы FF вызывали через бинарник браузера.
Здесь скачать под свою систему гекодрайвер и указать путь к нему в вызове драйвера:

1 лайк

вот пример норм - python - Selenium Firefox webdriver results in error: Service geckodriver unexpectedly exited. Status code was: 2 - Stack Overflow, в принципе в питоном 3.6 тоже должен завестись

1 лайк

Спасибо, завелся!

Сохранил, почему-то оказалось, что у меня версия 0.9.
Спасибо!