Wil*_*m C 7 python winapi version selenium-chromedriver
我正在尝试检查 chrome 和 chromedriver 的兼容性,以提示用户在需要时下载正确的 chromedriver 版本。我希望以类似于我检查如下所示的 chrome.exe 的方式检查 chrome 驱动程序的版本。
from win32api import GetFileVersionInfo
info = GetFileVersionInfo(path/to/chrome.exe)
Run Code Online (Sandbox Code Playgroud)
Str*_*Sun 12
如果我有什么误解,请告诉我。
您可以使用driver. Capabilities ['browserversion ']和driver. Capabilities ['chrome'] ['chromedriverversion ']. Split (' ') [0]获取 chrome 和 chromedriver 的版本。
然后截取版本号的前2位进行比较。如果它们不相同,您可以根据需要提醒用户下载正确的 chromedriver 版本。
最小的例子:
from selenium import webdriver
driver = webdriver.Chrome()
str1 = driver.capabilities['browserVersion']
str2 = driver.capabilities['chrome']['chromedriverVersion'].split(' ')[0]
print(str1)
print(str2)
print(str1[0:2])
print(str2[0:2])
if str1[0:2] != str2[0:2]:
print("please download correct chromedriver version")
Run Code Online (Sandbox Code Playgroud)
调试:
您还可以向用户提示正确的版本。
Chrome 和 Chromedriver 版本如下载页面所述:
如果您使用的是 Chrome 79 版,请下载ChromeDriver 79.0.3945.36
如果您使用的是 Chrome 78 版,请下载ChromeDriver 78.0.3904.70
如果您使用的是 Chrome 77 版本,请下载ChromeDriver 77.0.3865.40
如果您使用的是 Chrome 76 版,请下载ChromeDriver 76.0.3809.126
如果您使用的是 Chrome 75 版本,请下载ChromeDriver 75.0.3770.140
如果您使用的是 Chrome 74 版本,请下载ChromeDriver 74.0.3729.6
如果您使用的是 Chrome 73 版本,请下载ChromeDriver 73.0.3683.68
对于旧版本的 Chrome,请参阅Barett 的回答
有为特定 chrome 版本选择 crhomedriver 版本的一般指南:https://sites.google.com/a/chromium.org/chromedriver/downloads/version-selection。
更多详情请参考:https : //stackoverflow.com/a/55266105/11128312
笔记:
早期版本的 chromedriver 存储了 chrome 浏览器版本driver.capabilities['version']。如果你想获得chrome浏览器版本而不必担心这个,你可以使用下面的代码。
if 'browserVersion' in driver.capabilities:
print(driver.capabilities['browserVersion'])
else:
print(driver.capabilities['version'])
Run Code Online (Sandbox Code Playgroud)
可能对您有用的链接:
如何在 Chrome 浏览器通过 Python selenium 自动更新时使用特定版本的 ChromeDriver
如何使用 Python 运行 Chrome 浏览器版本?[关闭]
哪个 ChromeDriver 版本与哪个 Chrome 浏览器版本兼容?
| 归档时间: |
|
| 查看次数: |
8516 次 |
| 最近记录: |