[英]SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 76 with Selenium ChromeDriver
[英]SessionNotCreatedException: This version of ChromeDriver only supports Chrome version 84 using ChromeDriver and Chrome through Selenium and Python
我在 windows 7、selenium、chromedriver 版本 84(最新)上使用 python 3 來自動化我的 chrome 瀏覽器。
我正在使用這個腳本:
from selenium import webdriver
#import chromedriver_binary # Adds chromedriver binary to path
driver = webdriver.Chrome()
driver.get("http://www.python.org")
我總是在運行它時遇到這個錯誤。
Traceback (most recent call last):
File "D:\Huzefa\Desktop\zzzzzz.py", line 4, in <module>
driver = webdriver.Chrome()
File "C:\Users\Huzefa\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 81, in __init__
desired_capabilities=desired_capabilities)
File "C:\Users\Huzefa\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "C:\Users\Huzefa\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:\Users\Huzefa\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Users\Huzefa\AppData\Local\Programs\Python\Python36\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 84
我的 ChromeDriver 在路徑中。 我也使用過其他版本的 chromedriver,但我無法導航到網站!
您的 ChromeDriver 版本和您安裝的 Chrome 版本需要匹配。 您正在使用 ChromeDriver for Chrome version 84 ,在此答案時,它是 Chrome 的 beta(非穩定)版本; 你可能沒有使用它。 您可能使用的是 83 版。
檢查您的 Chrome 版本(幫助 -> 關於),然后找到正確的ChromeDriver 版本。 您可以改為使用可以為您處理此問題的webdriver-manager
。
此錯誤消息...
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 84
...意味着ChromeDriver無法啟動/產生新的瀏覽上下文,即Chrome 瀏覽器session。
您的主要問題是您使用的二進制文件版本之間的不兼容,如下所示:
支持Chrome 版本 84
因此ChromeDriver v84和Chrome 瀏覽器 v83之間存在明顯的不匹配
此問題有兩 (2) 個解決方案。
此外,還要確保:
@Test
。tearDown(){}
方法中調用driver.quit()
以優雅地關閉和銷毀WebDriver和Web 客戶端實例。我們可以自動化下載二進制文件和配置路徑的任務。
我們不必擔心瀏覽器版本或二進制版本
這可以通過使用webdriver-manager來完成
pip install webdriver-manager
現在問題中的上述代碼將與以下更改一起工作,
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
同樣可用於設置 Firefox、Edge 和 ie 二進制文件。
Chromedriver 需要更新。
從https://chromedriver.chromium.org/downloads 下載並安裝最新的 chromedriver
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.