chrome driver下载、selenium安装及报错解决

目录

一、Chrome驱动下载

1.查看Chrome版本

2.下载驱动

3.驱动的路径

无法运行驱动

二、selenium的安装与使用

1.安装selenium

2.使用selenium

参考


一、Chrome驱动下载

1.查看Chrome版本

打开Chrome浏览器,点击右上角的三个点,再点击设置。

点击左下方的"设置",右侧可以看到Chrome的版本,"119.0.6045.106"。

2.下载驱动

bing搜索"Chrome driver",找到下图标记的链接点击进入。

或者直接点击下面的链接进入下载界面。

ChromeDriver - WebDriver for Chrome - Downloads (chromium.org)

下"downloads"界面下滑查找自己对应的版本,然后下载符合自己电脑配置的链接下载,如果下滑界面中没有自己想要的版本,则点击绿色标记的这个链接 。

打开后是以下界面,对照版本信息,只看前三位 " 119.0.6045.* " ,能对应上就行。

然后选择我们想要的驱动"chromedriver",我的电脑是64位,所以我选择"win64",然后将后面的链接复制到浏览器中就可以下载了。

3.驱动的路径

我们把下载的压缩包解压,找到"chromedriver.exe",并把它放置到与浏览器"Chrome.exe"相同的文件夹下。

及:C:\Users\Billie\AppData\Local\Google\Chrome\Application\chromedriver.exe

然后在代码中写入:

python 复制代码
from selenium import webdriver
driver = webdriver.Chrome()

然后就可以启动驱动了。

运行时也可能会因为版本或者驱动位置的问题而报错(上面的方法是我使用之后成功的,下面介绍一下我在使用时出现的一些BUG及可尝试的解决方法)。

无法运行驱动

当时将驱动放在在浏览器相同的文件夹下,然后在括号中添加了路径,就导致报错,后面把路径去掉后就可以成功运行了。(也有博主说,可以把chromedriver.exe放到python编译器相同的文件夹下,有需要的可以试一下。)

python 复制代码
from selenium import webdriver
driver = webdriver.Chrome("C:\Users\Billie\AppData\Local\Google\Chrome\Application\chromedriver.exe")

二、selenium的安装与使用

1.安装selenium

在conda环境中键入" pip install selenium "即可安装,安装后可能会出现以下版本不兼容的报错。

这种报错就按照要求上调或者下调(重新安装新版本的库)库的版本就可以了,这里我就是上调了"requests"的版本。

2.使用selenium

具体的使用方法可一参照官网的使用说明。

这里说一下在新版本的selenium中修改了一下对象的调用方式,我安装的selenium版本是"4.11.2",在"4.3.0"版本之后,一些代码就发生了改变。

比如

原调用方式:

python 复制代码
from selenium import webdriver
test = driver.find_elements_by_css_selector("#content > div.table.cent > div")

新调用方式:

python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
test = driver.find_elements(By.CSS_SELECTOR,"#content > div.table.cent > div")

这里,"by"相关的方法移到了"common.by"中,我们"ctrl"然后点击"by"进入到"by.py"文件中,可以看到这里可调用的对象。

参考

解决selenium使用webdriver.Chrome()报错的问题

Python报错AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'解决方法

Python报错:AttributeError: 'WebDriver' object has no attribute 'find_element_by_link_text' 解决

相关推荐
陈随易30 分钟前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
里欧跑得慢3 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒3 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen3 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真4 小时前
我自己写的第一个skills--project-core-standards
前端·agent
Data_Journal4 小时前
如何使用cURL更改User Agent
大数据·服务器·前端·javascript·数据库
一乐小哥4 小时前
坚持迭代一个 Chrome 插件半年后,我的同事问我:"这不是 Chrome 自带的功能吗?"
chrome·github·ai编程
竹林8184 小时前
wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑
前端·javascript
donecoding4 小时前
Playwright MCP 页面捕获:Snapshot、截图、HTML 到底选哪个?
前端·ai编程·前端工程化
滕青山4 小时前
在线PDF拆分工具核心JS实现
前端·javascript·vue.js