SessionNotCreatedException异常:消息:未能创建会话:这个ChromeDriver版本仅支持使用ChromeDriver和Chrome 87版本。

6

我正尝试使用Selenium打开一个网站。在PyCharm编辑器中没有任何错误,但当我运行代码时却出现了许多我不太理解的错误。希望能得到一些帮助。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome(executable_path=r"C:\chromedriver\chromedriver.exe")

driver.get("https://www.singaporetech.edu.sg/")  # get gets url
print(driver.title)  # title of the page

driver.close()

这是我收到的错误信息:
C:\Users\kaush\PycharmProjects\seleniumTest1\venv\Scripts\python.exe C:/Users/kaush/PycharmProjects/seleniumTest1/main.py
Traceback (most recent call last):
  File "C:\Users\kaush\PycharmProjects\seleniumTest1\main.py", line 4, in <module>
    driver = webdriver.Chrome(executable_path=r"C:\chromedriver\chromedriver.exe")
  File "C:\Users\kaush\PycharmProjects\seleniumTest1\venv\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 76, in __init__
    RemoteWebDriver.__init__(
  File "C:\Users\kaush\PycharmProjects\seleniumTest1\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "C:\Users\kaush\PycharmProjects\seleniumTest1\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Users\kaush\PycharmProjects\seleniumTest1\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:\Users\kaush\PycharmProjects\seleniumTest1\venv\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 87
Current browser version is 86.0.4240.198 with binary path C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

1
您的chromedriver版本与chrome版本不匹配。 - Arundeep Chohan
如果你读到了最后一行selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 87 Current browser version is 86.0.4240.198,它表示版本不匹配。你可以参考以下链接找到兼容的版本。https://chromedriver.chromium.org/downloads - KunduK
1个回答

2

This error message...

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 87
    Current browser version is 86.0.4240.198 with binary path C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

这意味着ChromeDriver无法启动/生成新的Browsing Context,即Chrome Browser会话。

你主要的问题在于以下二进制文件版本不兼容:

  • 你正在使用chromedriver=87.0
  • chromedriver=87.0的发布说明明确提到了以下内容:

支持Chrome 87版本

  • 你正在使用Chromev86.0.4240.198

因此,ChromeDriver v2.40Chrome Browser v85.0之间存在明显的不匹配。


解决方案

请确保:

  • ChromeDriver已更新至当前ChromeDriver v87.0版本。
  • Chrome已更新至当前Chrome Version 87.0版本(根据ChromeDriver v87.0发布说明)。
  • 如果你的基础Web Client版本过旧,则卸载它并安装最新的GA和发布版本的Web Client
  • 进行一次系统重启
  • 非root用户身份执行你的@Test
  • 始终在tearDown(){}方法中调用driver.quit(),以优雅地关闭和销毁WebDriverWeb Client实例。

所以没有任何向后兼容性......太神奇了:O - Bartosz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接