关于selenium配置Chrome驱动(Windows系统)


selenium测试工具可以用来模拟用户浏览器的操作,其支持的浏览器有:PhantomJS,Firefox,Chrome等等,开发者可以根据当前的系统形式选择不同的模拟浏览器
每种模拟浏览器都需要对应的浏览器驱动(一个以.exe为后缀的可执行文件),笔者使用谷歌浏览器Chrome,对应的浏览器驱动可以通过下面的网址下载

  1. google官方(由于防火墙的保护,一般无法访问)
  2. 镜像网站

浏览器版本与驱动版本

1. 浏览器版本查看

打开谷歌浏览器>>>Settings>>>About Chrome>>>查看浏览器版本
在这里插入图片描述

2. 驱动版本选择与下载

打开上面的镜像网站,我们可以看到多种不同版本的Chrome驱动在这里插入图片描述
选择与浏览器版本最接近的驱动版本,点击蓝色链接
在这里插入图片描述

每个蓝色链接都对应着该版本驱动,其中又因系统的不同被分为不同的压缩包,在这里插入图片描述

笔者的在这里只介绍windows的驱动下载,所以我们点击下载win32.zip的压缩包,将其保存在桌面
在这里插入图片描述

打开后,我们看到里面只有一个.exe文件,这就是我们所说的Chrome浏览器驱动

在这里插入图片描述

Chromedriver的配置

上面我们已经下载好了浏览器驱动,但是还不能直接在程序中使用,否则会程序下面的错误
‘selenium.common.exceptions.WebDriverException: Message: ‘chromedriver’ executable needs to be in PATH. ’
在这里插入图片描述

关于其配置,通常有下面几种方法

1. 使用executable_path参数

通过selenium.webdriver.Chrome()实例化一个driver时,需要通过executable_path参数指明驱动器所在路径

实例:使用百度自动搜索python

from selenium import webdriver
import time

url='http://www.baidu.com'
path='e:\\chromedriver.exe'
driver = webdriver.Chrome(executable_path=path)
driver.get(url)
driver.find_element('id','kw').send_keys('python')
driver.find_element('id','su').click()
time.sleep(2)
driver.quit()

运行结果
在这里插入图片描述

2. 创建Service对象

最近使用第一种方法程序提出了下面的警告:‘DeprecationWarning: executable_path has been deprecated, please pass in a Service object’
在这里插入图片描述

程序在告诉我们executable_path已被弃用,请传入一个Service对象,可能是因为selenium库进行了更新,我们可以先查看一下webdriver.py
在这里插入图片描述

在这里插入图片描述
从上面我们可以看到程序报错的原因,果然这个用来表示可执行文件路径的参数已被弃用,但貌似它被存放在了一个service对象中,我们再来看一下service.py

在这里插入图片描述
既然executable_path被重构进了service.py中,我们可以实例化一个Service对象来表示浏览器驱动的路径

from selenium import webdriver
import time

url='http://www.baidu.com'
path=Service('e:\\chromedriver.exe')	# 将路径实例化为一个Service对象
driver = webdriver.Chrome(service=path)
driver.get(url)
driver.find_element('id','kw').send_keys('python')
driver.find_element('id','su').click()
time.sleep(2)
driver.quit()

执行结果
在这里插入图片描述

3. 使用默认值

当下载好.exe文件后,我们将其转移至python解释器:python.exe同级目录Scripts
在这里插入图片描述
如图
在这里插入图片描述
接下来我们实例化driver对象时就不需要再次指明路径

from selenium import webdriver
import time

url='http://www.baidu.com'
driver = webdriver.Chrome()
driver.get(url)
driver.find_element('id','kw').send_keys('python')
driver.find_element('id','su').click()
time.sleep(2)
driver.quit()

运行结果
在这里插入图片描述

  • 9
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
selenium谷歌驱动是指用于驱动谷歌浏览器的webdriver。它可以通过selenium.webdriver.Chrome()方法来实例化一个driver对象,并指明驱动器所在的路径,即通过executable_path参数来指定。提供的webdrive驱动下载地址下载适合你谷歌浏览器版本的驱动。 2. 如果已经安装了正确版本的webdrive驱动,但仍然出现问题,那可能是因为浏览器版本更新导致与原来的webdrive驱动版本不兼容。此时,你需要重新下载并安装与你当前浏览器版本对应的webdrive驱动。 3. 在实例化driver对象时,确保通过executable_path参数指定了驱动器所在的路径。 通过以上几个步骤,你应该能够成功解决selenium谷歌驱动相关的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [selenium的webdrive驱动安装(谷歌浏览器)](https://blog.csdn.net/weixin_46256519/article/details/124227576)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [关于selenium配置Chrome驱动Windows系统)](https://blog.csdn.net/m0_54510474/article/details/121278693)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夺笋123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值