selenium.common.exceptions.SessionNotCreatedException:消息:未创建会话:ChromeDriver的Chrome版本必须介于70到73之间

the*_*sie 14 google-chrome webdriver python-3.x selenium-chromedriver selenium-webdriver

我正在尝试使用Selenium创建一个webcrawler,但是在尝试创建webdriver对象时出现此错误。

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: Chrome version must be between 70 and 73
(Driver info: chromedriver=2.45.615291 (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),platform=Windows NT 6.1.7601 SP1 x86_64)
Run Code Online (Sandbox Code Playgroud)

我下载了需要Chrome 70-73 的最新版本的chromedriver(2.45)。我当前的Chrome版本是68.0.3440.106(正式版本)(64位),是最新版本。我尝试下载“较旧”的chrome版本(71),并尝试安装它时,安装程​​序指示我已经安装了较新版本。

即使网站说有,似乎没有以前的Chromedriver版本可供下载。我找不到他们。

我不太了解71版本比68版本如何?

有没有比68实际可用的Chrome版本,或者可以与Chrome 68一起使用的chromedriver旧版本?

还有其他建议吗?

这是我要执行的代码:

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
user = 'XXXXXXX'
pwd = 'XXXXXXX'
chromedriver = "...\...\...\chromedriver.exe"
driver = webdriver.Chrome(executable_path=chromedriver) # Error occurs at this line
driver.get("http://www.facebook.com")
assert "Facebook" in driver.title
time.sleep(5) # So i can see something!
elem = driver.find_element_by_id("email")
elem.send_keys(user)
time.sleep(5) # So i can see something!
elem = driver.find_element_by_id("pass")
elem.send_keys(pwd)
time.sleep(5) # So i can see something!
elem.send_keys(Keys.RETURN)
driver.close()
Run Code Online (Sandbox Code Playgroud)

kil*_*kis 10

For me, upgrading the driver did the trick. Just run:

brew cask upgrade chromedriver
Run Code Online (Sandbox Code Playgroud)

and then try running your test again. Hope it helps!

  • 我不得不做“酒桶重新安装chromedriver” (2认同)

Deb*_*anB 6

此错误消息...

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: Chrome version must be between 70 and 73
(Driver info: chromedriver=2.45.615291 (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),platform=Windows NT 6.1.7601 SP1 x86_64)
Run Code Online (Sandbox Code Playgroud)

...暗示Chrome版本必须介于70到73之间

您的主要问题是所使用的二进制文件之间的版本兼容性,如下所示:

支持Chrome v70-72

支持Chrome v67-69

因此,ChromeDriver v2.45Chrome浏览器v68.0之间明显不匹配



另类

我觉得您的系统中安装了2个版本的Chrome浏览器。如果是这种情况,您需要在程序中提及Chrome二进制文件的绝对位置,并且可以使用以下解决方案:

注意:您可以在未创建的会话异常中找到相关的讨论:将Selenium Webdriver与Chrome配合使用时,Chrome版本必须> = xyz


Sig*_*hil 5

您可以在此处找到旧版的chrome驱动程序。

我认为从官方渠道以外的来源安装chrome并不是一个好主意,安装chrome可能会导致问题。查看Google更新服务是否正在您的PC中运行。这会自动将chrome版本更新为最新版本。我的正在运行版本71.0.3578.98(正式版本)(64位)。


小智 5

有两种方法可以解决此问题:

1.如果您的Chrome版本未更新->更新它

步骤: 1.转到帮助->关于Google Chrome-> Chrome将自动查找更新(将Chrome更新为最新版本)

在此处输入图片说明

2.如果您的chrome版本已经是最新版本->那么您需要升级chrome驱动程序版本

这是链接:http : //chromedriver.chromium.org/downloads

在此处输入图片说明