SessionNotCreatedException: Сообщение: сеанс не создан: эта версия ChromeDriver поддерживает только Chrome версии 74, хотя Chrome v74 установлен - PullRequest
0 голосов
/ 01 мая 2019

Я начинаю играть с селеном в python, и когда я пытаюсь запустить этот код, он просто выдает ошибку, что эта версия chromedriver поддерживает только версию 74 chrome, но я уже скачал версию 74 отсюда: https://chromedriver.storage.googleapis.com/index.html?path=74.0.3729.6/

Код, который я пытаюсь запустить:

import selenium
from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://stackoverflow.com')
driver.quit()

Ошибка:

Traceback (most recent call last):
  File "c:/Users/Main/Desktop/Python web bot/Bot 
code/selenium_training.py", line 3, in <module>
driver = webdriver.Chrome()
  File "C:\Users\Main\AppData\Local\Programs\Python\Python37\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 81, in __init__
desired_capabilities=desired_capabilities)
  File "C:\Users\Main\AppData\Local\Programs\Python\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
  File "C:\Users\Main\AppData\Local\Programs\Python\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Users\Main\AppData\Local\Programs\Python\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
  File "C:\Users\Main\AppData\Local\Programs\Python\Python37\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 74
  (Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Windows NT 10.0.17134 x86_64)

Как видите, он говорит, что мне нужна версия74 хрома, но он у меня уже есть!

1 Ответ

0 голосов
/ 01 мая 2019

Это сообщение об ошибке ...

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 74
  (Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Windows NT 10.0.17134 x86_64)

... означает, что ChromeDriver ожидает, что версия Chrome Browser будет 74 .

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

  • Вы используете chromedriver = 74.0.3729.6
  • Примечания к выпуску chromedriver = 74.0.3729.6 четко упоминают следующее:

Поддержка Chrome v74

Предположительно, в вашей системе установлено несколько версий браузеров Chrome , а версия браузера Chrome установлена ​​в месте по умолчанию, доступ к которому chromedriver = 74.0.3729.6 is not Chrome Browser v74.0 . Отсюда вы видите ошибку.


Решение

Самым быстрым решением было бы обновить версию Chrome , установленную в расположении по умолчанию, до уровня Chrome v74 .


Альтернативные

В качестве альтернативы, если вы хотите использовать двоичный файл браузера Chrome , установленный в нестандартном месте , вы можете использовать экземпляр ChromeOptions() со свойством binary_location указать на нестандартное расположение браузера Chrome следующим образом:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.binary_location = "C:\\Program Files\\Chrome\\chrome64_55.0.2883.75\\chrome.exe"
driver = webdriver.Chrome(chrome_options = options, executable_path=r'C:\path\to\chromedriver.exe')
driver.get('http://google.com/')
print("Chrome Browser Invoked")
driver.quit()

Подробное обсуждение можно найти в Не удается найти бинарный файл Chrome с Selenium в Python для более старых версий Google Chrome

...