Исполняемый файл webdriver должен находиться в переменной PATH - PullRequest
1 голос
/ 10 апреля 2020

Я пытаюсь использовать селен, и все время получаю сообщение об ошибке:

Traceback (most recent call last):
  File "C:\Users\jensa\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\common\service.py", line 76, in start
    stdin=PIPE)
  File "C:\Users\jensa\AppData\Local\Programs\Python\Python37-32\lib\subprocess.py", line 775, in __init__
    restore_signals, start_new_session)
  File "C:\Users\jensa\AppData\Local\Programs\Python\Python37-32\lib\subprocess.py", line 1178, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "seleniumtest.py", line 5, in <module>
    driver = webdriver.Chrome(executable_path=path)
  File "C:\Users\jensa\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 73, in __init__
    self.service.start()
  File "C:\Users\jensa\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\common\service.py", line 83, in start
    os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'webdriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

Я действительно сбит с толку, так как ничто в Интернете не помогает мне. Папка для хроматографа находится в ПУТИ.

Я пытался разместить файл python в той же папке, что и драйвер, и в другой папке.

Я пытался указать местоположение с помощью executetable_path. Я пробовал включать и не включать «.exe» в путь к исполняемому файлу. Ничего не работает Может кто-нибудь, пожалуйста, помогите мне заставить это работать. Вот мой код:

from selenium import webdriver

chromedriver = r"\C:\bin\chromedriver"
driver = webdriver.Chrome(chromedriver)
driver.get("http://stackoverflow.com")

Ответы [ 2 ]

0 голосов
/ 10 апреля 2020

Если он указан в PATH, тогда нет необходимости ссылаться на него в вашем коде.

Просто напишите свой код, следующий

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("http://stackoverflow.com")
0 голосов
/ 10 апреля 2020

Вам необходимо указать chrome двоичный путь к драйверу, пожалуйста, скачайте последнюю версию chrome драйвера, который поддерживает версию вашего браузера: вы можете скачать Последняя Chrome драйвер отсюда

from selenium import webdriver
driver = webdriver.Chrome(executable_path=r"C:\bin\chromedriver.exe")
driver.maximize_window()
driver.get("url")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...