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' 解决

相关推荐
阿珊和她的猫24 分钟前
v-scale-scree: 根据屏幕尺寸缩放内容
开发语言·前端·javascript
加班是不可能的,除非双倍日工资5 小时前
css预编译器实现星空背景图
前端·css·vue3
wyiyiyi5 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
gnip6 小时前
vite和webpack打包结构控制
前端·javascript
excel6 小时前
在二维 Canvas 中模拟三角形绕 X、Y 轴旋转
前端
阿华的代码王国6 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
一条上岸小咸鱼6 小时前
Kotlin 基本数据类型(三):Booleans、Characters
android·前端·kotlin
Jimmy6 小时前
AI 代理是什么,其有助于我们实现更智能编程
前端·后端·ai编程
ZXT7 小时前
promise & async await总结
前端
Jerry说前后端7 小时前
RecyclerView 性能优化:从原理到实践的深度优化方案
android·前端·性能优化