ОС: Ubuntu 18.04.3 LTS
Версия Geckodriver: 0.26
Версия Firefox: 76.0.1
Версия Python: 3.6.9
Версия Selenium: 3.141.0
Мой код:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver_options = Options()
driver_options.headless = True
browser = webdriver.Firefox(options=driver_options)
... do stuff
Прежде всего, эта установка отлично работает на моем Mac, когда я отправляю ее в производство, я получаю эту ошибку. Два дня пытаюсь это исправить.
Я обнаружил две основные причины, которые могут вызвать эту проблему:
Версии совпадают.
Как говорится в этом сообщении:
WebDriverException: сообщение: недопустимый аргумент: невозможно убить завершенный процесс с помощью GeckoDriver, Selenium и Python на RaspberryPi3
Я проверил свои версии, и они совместимыGeckodriver находится на пути
Я добавил softlink прямо рядом с моим кодом, чтобы он мог найти как geckodriver, так и firefoxИ geckodriver, и firefox имеют права доступа 777
Если я запускаю firefox в безголовом режиме с терминала, кажется, что он работает нормально
Файл geckodriver.log выводит:
1590245018121 mozrunner::runner INFO Running command: "/var/www/mycode/env/bin/firefox" "-marionette" "-headless" "-foreground" "-no-remote" "-profile" "/tmp/rust_mozprofile7raE8H"
/var/www/mycode/env/bin/firefox: 1: /var/www/mycode/env/bin/firefox: which: not found