解决selenium新版启动缓慢 (卡住) 的问题

07-19 713阅读

前因:

新版selenium (截至2024.3.25) 会自动下载并载入webDriver,不需要以前的手动加载,但这个自动载入功能也带来了一些问题。

以Chrome为例子, 新旧写法代码如下:

# 旧版写法
driver = webdriver.Chrome("此处为webDriver文件目录")
# 新版写法
driver = webdriver.Chrome()

新版selenium会自动将webDriver下载到C:\Users\用户名\.cache\selenium\chromedriver\win64或32\浏览器版本号\chromedriver.exe目录下

每隔久一点启动或缓存被清理后, selenium就会检查webDriver更新并重新下载,重新下载的过程中程序无法运行,而且由于网络问题,重新下载webDriver往往要花费极长的时间,用户体验非常差。

解决:

使用selenium中的service类手动加载webDriver即可避免每次重新下载webDriver更新。

第一步:在Chrome for Testing availability网站下载对应Chrome版本的chromedriver(其他浏览器如Edge请自行解决),举例,我的电脑安装的是windows 64位的稳定版123版本Chrome就找到 123.0.6 + stable + win64 然后复制右边的下载链接进行下载

解决selenium新版启动缓慢 (卡住) 的问题

然后把chromedriver.exe文件放在随便哪个目录下 (我放在了项目目录下, 并根据版本号和系统进行了重命名为了chromedriver_123.0.6312.58_x64.exe这样方便以后判断要不要更新webDriver)

参照以下代码用service加载驱动即可

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 填写chromedriver的目录, 此处使用了相对路径
service = Service('./chromedriver_123.0.6312.58_x64.exe')
driver = webdriver.Chrome(service=service)
driver.get("https://www.baidu.com")
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]