python - ChromeDriver Chrome 版本错误和安装问题
问题描述
我将 Windows 10 ChromeDriver 与 Selenium 一起使用了几个月,我的 Python 应用程序一切正常。今天,当我使用 may 应用程序时,我收到以下错误:
This version of ChromeDriver only supports Chrome version 78
我检查了我的 chrome 版本,确实它现在是 80 版,而不是 78 版了。
我下载了 ChromeDriver 80.0.3987.106。但是,当我单击 chromdriver.exe 时,命令窗口打开并出现以下消息:
Starting ChromeDriver 80.0.3987.106 ... on port 9515
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
显示上述消息后,命令窗口卡住并且不接受任何键盘输入。
解决方案
我相信这是正常的行为。我认为您应该从代码中调用驱动程序,而不是直接从终端单击或启动驱动程序,如入门教程中所述:
import time
from selenium import webdriver
driver = webdriver.Chrome('/path/to/chromedriver') # Optional argument, if not specified will search path.
driver.get('http://www.google.com/');
time.sleep(5) # Let the user actually see something!
search_box = driver.find_element_by_name('q')
search_box.send_keys('ChromeDriver')
search_box.submit()
time.sleep(5) # Let the user actually see something!
driver.quit()
本教程还解释了如何管理驱动程序的生命周期,因此您不必每次都启动它,而是将其用作后台服务(服务器)。
我认为你应该首先尝试前一个选项,然后当你感觉舒服时,如果你觉得有必要,继续使用驱动程序作为服务器。
推荐阅读
- c - 为什么使用 exec 调用时没有将 argv[0] 设置为程序名称?
- scripting - 如何使用 KEY_pre_write 方法从 Zapier(脚本)中的操作字段更改“键”名称?
- java - 方法参考没有懒惰地评估?
- emacs - emacs 在特定窗口中更改文件
- java - JRE 8u192 - javax.security.auth.login.FailedLoginException:无法绑定到 LDAP 服务器
- javascript - react 访问 API 响应
- node.js - Fabric节点sdk使用服务发现功能
- amazon-athena - 在 Athena/Presto 中将数组拆分为列
- matlab - 在 csv 标头中保留空格(Matlab)
- c# - 按日期对数据表行排序