前言
selenium 无响应,最常见的原因是,webdriver与浏览器版本不匹配导致的。
而chrome 目前新的版本都是会自动升级的,这就会导致一段时间不用selenium时,driver就无法使用了。
1、检测情况
from selenium import webdriver driver = webdriver.chrome() #测试方法 def query_selenium(): driver.get("https://www.baidu.com") print(driver.title) if __name__ == '__main__': query_selenium()
如果driver不正常的话,会一直卡着,不会有响应,或者报错
或者是报这样一个错误
the chromedriver version (114.0.5735.90) detected in path at e:\workspace\python\test\venv\scripts\chromedriver.exe might not be compatible with the detected chrome version (120.0.6099.130); currently, chromedriver 120.0.6099.109 is recommended for chrome 120.*, so it is advised to delete the driver in path and retry traceback (most recent call last): file "e:\workspace\python\test\gemini\gemini_gpt.py", line 33, in <module> driver = webdriver.chrome() file "e:\workspace\python\test\venv\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 45, in __init__ super().__init__( file "e:\workspace\python\test\venv\lib\site-packages\selenium\webdriver\chromium\webdriver.py", line 56, in __init__ super().__init__( file "e:\workspace\python\test\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 206, in __init__ self.start_session(capabilities) file "e:\workspace\python\test\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 290, in start_session response = self.execute(command.new_session, caps)["value"] file "e:\workspace\python\test\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 345, in execute self.error_handler.check_response(response) file "e:\workspace\python\test\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 229, 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 114 current browser version is 120.0.6099.130 with binary path c:\program files\google\chrome\application\chrome.exe stacktrace: backtrace: gethandleverifier [0x0108a813+48355] (no symbol) [0x0101c4b1] (no symbol) [0x00f25358] (no symbol) [0x00f461ac] (no symbol) [0x00f41ef3] (no symbol) [0x00f40579] (no symbol) [0x00f70c55] (no symbol) [0x00f7093c] (no symbol) [0x00f6a536] (no symbol) [0x00f482dc] (no symbol) [0x00f493dd] gethandleverifier [0x012eaabd+2539405] gethandleverifier [0x0132a78f+2800735] gethandleverifier [0x0132456c+2775612] gethandleverifier [0x011151e0+616112] (no symbol) [0x01025f8c] (no symbol) [0x01022328] (no symbol) [0x0102240b] (no symbol) [0x01014ff7] basethreadinitthunk [0x75b2fcc9+25] rtlgetappcontainernamedobjectpath [0x76f37c6e+286] rtlgetappcontainernamedobjectpath [0x76f37c3e+238] process finished with exit code 1
2、重新下载新的driver
最好的解决方案是,进入chromedriver官方下载
访问chromedriver官方页面:chromedriver - webdriver for chrome - downloads
官方展示如下:
我们查看chrome版本可以看出,
版本号为120.0.6099.130 ,而官方出的driver 却给出的版本是 chromedriver 114.0.5735.90
选择 current releases 中的这个标红的链接,进入到测试版本选择里面。
选择最接近我们的 chrome版本的,能用的版本
从此处进行chromedriver 下载
放入到python环境中去,
以下是测试结果 :
总结
到此这篇关于js逆向之如何一招彻底解决selenium webdriver无响应的文章就介绍到这了,更多相关selenium webdriver无响应解决内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论