Huz*_*ama 6 python selenium google-chrome selenium-chromedriver selenium-webdriver
我在 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")
Run Code Online (Sandbox Code Playgroud)
并且我在运行它时总是收到此错误。
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
Run Code Online (Sandbox Code Playgroud)
我的 ChromeDriver 在路径中。我也使用过其他版本的 chromedriver 但我无法导航到网站!
Raj*_*eer 10
我们可以自动执行下载二进制文件和配置路径的任务。
我们不必担心浏览器版本或二进制版本
pip install webdriver-manager
Run Code Online (Sandbox Code Playgroud)
现在问题中的上述代码只需进行以下更改即可工作,
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
Run Code Online (Sandbox Code Playgroud)
同样可以用于设置 Firefox、Edge 和 ie 二进制文件。
原始答案 - /sf/answers/4110954151/
您的 ChromeDriver 版本和您安装的 Chrome 版本需要匹配。您使用的是Chrome 版本 84 的ChromeDriver ,在本回答时,它是 Chrome 的测试版(非稳定版);你可能没有使用它。您可能使用的是版本 83。
检查您的 Chrome 版本(帮助 -> 关于),然后找到正确的ChromeDriver 版本。您可以改用webdriver-manager
which 可以为您处理此问题。