这个版本的ChromeDriver仅支持Chrome版本79 - Python。
这个版本的ChromeDriver仅支持Chrome版本79 - Python。
这个错误让我发疯。我的代码是:\n
from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC import chromedriver_binary from selenium.webdriver.common.by import By import time from influxdb import InfluxDBClient chrome_options = Options() chrome_options.add_argument("--headless") chromedriver_binary = "/home/dario/scripts/cron_run/web_app_login_checker/chromedriver/chromedriver" driver = webdriver.Chrome(chromedriver_binary, options=chrome_options)
\n如果我运行:\n
./chromedriver -v ChromeDriver 79.0.3945.36 (3582db32b33893869b8c1339e8f4d9ed1816f143-refs/branch- heads/3945@{#614})
\n这是正确的版本。\n完整的错误追踪如下:\n
Traceback (most recent call last): File "grafana.py", line 12, indriver = webdriver.Chrome(chromedriver_binary, options=chrome_options) File "/home/dario/scripts/cron_run/web_app_login_checker/lib/python3.6/site- packages/selenium/webdriver/chrome/webdriver.py", line 81, in __init__ desired_capabilities=desired_capabilities) File "/home/dario/scripts/cron_run/web_app_login_checker/lib/python3.6/site- packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__ self.start_session(capabilities, browser_profile) File "/home/dario/scripts/cron_run/web_app_login_checker/lib/python3.6/site- packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session response = self.execute(Command.NEW_SESSION, parameters) File "/home/dario/scripts/cron_run/web_app_login_checker/lib/python3.6/site- packages/selenium/webdriver/remote/webdriver.py", line 321, in execute self.error_handler.check_response(response) File "/home/dario/scripts/cron_run/web_app_login_checker/lib/python3.6/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 79
\n在Stack Overflow上已经讨论过的主题都没有帮助到我。
从上述内容中可以整理出以下问题的原因和解决方法:
问题:(This version of ChromeDriver only supports Chrome version 79 - Python)错误的出现原因以及解决方法。
原因:ChromeDriver版本与Chrome浏览器版本不匹配。
解决方法:
1. 检查Chrome浏览器的版本,可以通过以下步骤进行检查:
- 打开Chrome浏览器。
- 点击右上角的菜单按钮(三个垂直点)。
- 选择“帮助”(Help)。
- 选择“关于Google Chrome”(About Google Chrome)。
- 在弹出的窗口中,可以看到Chrome浏览器的版本号。
2. 下载与Chrome浏览器版本相匹配的ChromeDriver。可以通过以下步骤进行下载:
- 访问ChromeDriver官方网站(https://chromedriver.chromium.org/downloads)。
- 在网页中找到与Chrome浏览器版本匹配的ChromeDriver版本。
- 点击下载链接,下载相应版本的ChromeDriver。
3. 将下载的ChromeDriver更新到引用文件夹中。可以按照以下步骤进行更新:
- 找到引用文件夹,该文件夹通常用于存储项目中使用的驱动程序文件。
- 将下载的ChromeDriver文件复制到引用文件夹中,替换原有的ChromeDriver文件。
根据我个人的情况,我正在使用Windows 10和Python,并且我已经使用最新的chromedriver.exe文件(适用于Chrome v83)。我还备份了旧的驱动程序,并保留了与Chrome版本匹配的最新驱动程序。
以上是解决ChromeDriver版本不匹配的问题的步骤和方法。通过检查Chrome浏览器版本,下载相应版本的ChromeDriver,并更新到引用文件夹中,可以解决此问题。
这是一段关于解决ChromeDriver版本不兼容的问题的Shell脚本。当Google Chrome稳定版本更新时,该脚本可以动态下载兼容的ChromeDriver版本。以下是问题的原因和解决方法:
原因:ChromeDriver版本与Google Chrome版本不匹配。
解决方法:使用Shell脚本动态下载兼容的ChromeDriver版本。
1. 获取当前Chrome浏览器的版本号:
chromeVersion=$(google-chrome --product-version)
2. 从完整版本号中获取主要版本号:
chromeMajorVersion=${chromeVersion%%.*}
3. 设置获取ChromeDriver发布URL的基本URL:
baseDriverLatestReleaseURL=https://chromedriver.storage.googleapis.com/LATEST_RELEASE_
4. 根据Chrome的主要版本号创建最新发布的ChromeDriver的URL:
latestDriverReleaseURL=$baseDriverLatestReleaseURL$chromeMajorVersion
5. 下载包含应与Chrome主要版本兼容的完整版本号的文件:
wget $latestDriverReleaseURL
6. 读取文件以获取应下载的ChromeDriver版本:
latestFullDriverVersion=$(cat $latestDriverVersionFileName)
7. 创建最终的ChromeDriver下载URL:
finalURL="https://chromedriver.storage.googleapis.com/"$latestFullDriverVersion"/chromedriver_linux64.zip"
8. 下载兼容的ChromeDriver版本:
wget $finalURL
通过以上步骤,可以在定时任务的Databricks环境中成功获取兼容的Chrome浏览器版本和ChromeDriver版本,并且可以完美运行,没有任何问题。希望这对他人有所帮助。