Селен не работает в Python

У меня проблема с Selenium! Я пробовал и 3.6, и 2.7, но без разницы! Я использую win7 (64 бит)

начнем с простого кода:

binary = FirefoxBinary(r"C:\Program Files\Mozilla Firefox\firefox.exe")
fp = webdriver.FirefoxProfile()
driver = webdriver.Firefox(firefox_binary=binary, firefox_profile=fp)

Итак, я получаю эти ошибки:

C: \ Python27 \ python.exe E: /Python/MathBattle_Solver/test.py

Traceback (последний вызов последним): файл "E: /Python/MathBattle_Solver/test.py", строка 13, загружается ("https://www.google.com ")

Файл "E: /Python/MathBattle_Solver/test.py", строка 9, в загружаемом браузере = webdriver.Firefox (возможности = firefox_capabilities, исполняемый_путь = r'C: \ Windows \ System32 \ geckodriver.exe ')

Файл "C: \ Python27 \ lib \ site-packages \ selenium \ webdriver \ firefox \ webdriver.py", строка 144, в init self.service.start ()

Файл "C: \ Python27 \ lib \ site-packages \ selenium \ webdriver \ common \ service.py", строка 81, в начале os.path.basename (self.path), self.start_error_message)

selenium.common.exceptions.WebDriverException: сообщение: исполняемый файл geckodriver.exe должен находиться в PATH.

Я загрузил "geckodriver.exe", поместил его в папку system32 и добавил в системную переменную PATH из переменных среды, но ничего не произошло! все та же ошибка!

Любая идея?


person MohamadKh75    schedule 12.04.2017    source источник
comment
Версия Firefox?   -  person Kishan Patel    schedule 12.04.2017
comment
@KishanPatel 52.0.2 (64 бит)   -  person MohamadKh75    schedule 12.04.2017
comment
Это не сработает. Используйте версию 47 или ниже. Открытый вопрос преобладает в github github.com/SeleniumHQ/selenium/issues/3658   -  person Kishan Patel    schedule 12.04.2017
comment
@KishanPatel, а как насчет ошибки geckodriver.exe? я добавил его в PATH, но ...   -  person MohamadKh75    schedule 12.04.2017
comment
Попробуйте поместить geckodriver.exe в папку сценария и вызвать webdriver.Firefox с помощью: driver = webdriver.Firefox(firefox_binary=binary, firefox_profile=fp, executable_path='geckodriver.exe')   -  person fedterzi    schedule 12.04.2017
comment
@fedterzi Спасибо! Решено ... Пожалуйста, напишите свой комментарий как сообщение, чтобы я мог отметить его как лучший ответ :)   -  person MohamadKh75    schedule 12.04.2017


Ответы (2)


У меня он работает на 52.0.2 (64 бит) и Geckodriver 0.15.0-win64 (из https://github.com/mozilla/geckodriver/releases).

Поместите geckodriver.exe в папку сценария и затем вызовите webdriver.Firefox с помощью

driver = webdriver.Firefox(firefox_binary=binary, firefox_profile=fp, executable_path='geckodriver.exe')
person fedterzi    schedule 12.04.2017

Selenium требует наличия драйвера для взаимодействия с выбранным браузером. Например, Firefox требует geckodriver, который необходимо установить перед запуском приведенных ниже примеров. Убедитесь, что он находится в вашем PATH, e. g., поместите его в / usr / bin или / usr / local / bin.

Несоблюдение этого шага приведет к ошибке selenium.common.exceptions.WebDriverException: Сообщение: исполняемый файл geckodriver должен находиться в PATH

Поместите geckodriver.exe в папку сценария и затем вызовите webdriver.Firefox с помощью

person GHULAM NABI    schedule 26.12.2019