所以这是我第一次使用硒,我让chromedriver浏览器打开了四分之一秒,然后关闭,即使我给它加载了一个网页或告诉它进入睡眠状态。它还给了我一个SessionNotCreatedException。
代码:
from selenium import webdriver
import time
class TestBot():
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.google.com/')
time.sleep(5)
错误:
>>> bot = TestBot()
DevTools listening on ws://127.0.0.1:55101/devtools/browser/7029bc33-860f-42b8-8fb5-751cf27f82bc
[16708:17644:0524/045808.952:ERROR:browser_switcher_service.cc(238)] XXX Init()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "test_bot.py", line 6, in __init__
self.driver = webdriver.Chrome()
File "C:\Users\Caleb\test_bot\test_bot\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 81, in __init__
desired_capabilities=desired_capabilities)
File "C:\Users\Caleb\test_bot\test_bot\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "C:\Users\Caleb\test_bot\test_bot\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:\Users\Caleb\test_bot\test_bot\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Users\Caleb\test_bot\test_bot\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 83
我尝试将Chromedriver添加为路径变量,但这没有用。我可以在cmd中开始一个chromedriver会话。
答案 0 :(得分:0)
我认为您应该尝试在MozillaFirefox上运行Selenium,还需要安装Geckodriver,该软件可充当Firefox和Selenium之间的桥梁。
答案 1 :(得分:0)
我查看的Chrome版本不正确,原来我的版本是81,所以我安装了webdriver-manager并可以正常工作
答案 2 :(得分:0)
我们在最后一行看到的
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 83
尝试:
将Chrome更新到最新版本,因此也添加硒
将geckodriver.exe
用于chrome,并将其放入文件夹中,然后尝试:
self.driver = webdriver.Chrome(r"c:\your\geckodriver\path\withput\")
答案 3 :(得分:0)
此错误消息...
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 83
...表示 ChromeDriver 无法启动/产生新的浏览上下文,即 Chrome浏览器会话。
您的主要问题是所使用的二进制版本之间的不兼容性,如下所示:
支持 Chrome 83版
Chrome浏览器可能尚未更新为Chrome v83.0,但作为最近一次推送的一部分,仍然是Chrome v81.0
因此 ChromeDriver v83.0 与 Chrome浏览器v81.0
之间存在明显的不匹配确保: