之前讲到基于python的自动化测试环境,需要安装Python,再安装Selenium。具体可看【如何学习Python自动化测试】—— 自动化测试环境搭建
但是,想要使用Selenium发送指令模拟人类行为操作浏览器,就需要安装浏览器驱动。不同的浏览器需要安装各自的驱动。
具体步骤(chrome举例): 可直接跳转至本文【3.Chrome浏览器驱动器chromedriver的安装】。
1. Python的安装和配置
验证Python是否安装成功
2.Selenium的安装和配置
(1) 安装selenium
在命令行窗口输入 pip install selenium命令安装selenium
(2)验证selenium是否安装成功
在命令行窗口输入 pip show selenium验证selenium安装是否成功。
3.Chrome浏览器驱动器chromedriver的安装
(1)查看Chrome版本
从Chrome浏览器右上角的菜单中选择【关于Google Chrome(G)】,查看浏览器的版本,从而得出自己机器上Chrome的版本。
(2)下载chromedriver.exe
Chrome 115之前的版本
可以从https://chromedriver.storage.gooleeapis.com/index.html下载,如果访问失败,可以使用淘宝镜像地址:https://npm.taobao.org/mirrors/chromedriver/。选择对应的版本号进入,如果没有对应的,就选择最相近的版本号。然后根据自己的系统选择对应的zip文件进行下载。如系统是win32,就选择chromedriver_win32.zip。
如图:因为由(1)查看Chrome版本可知现在我的Chrome的版本为110.0.5481.178,最近的chromedriver版本号为110.0.5481.77,我的电脑为window(64位),选择chromedriver_win32.zip。
更新driver
Google Chrome经常会自动更新版本,可能你前段时间还是版本a,现在再次看会发现Chrome已是最新版本b。在这个时候运行一个web自动化测试脚本时,报了如下的错误,Message: session not created: This version of ChromeDriver only supports Chrome version 110
意思就是: 你的ChromeDriver(Chrome驱动器)版本只能维持 Chrome(谷歌浏览器)110版本的,而我当前的Chrome 版本是 113.0.5672.64,路径***** 。
这个问题的解决办法也很简单,有两种办法:
第一种:换浏览器(别的浏览器可能还未更新)
第二钟:换ChromeDirver驱动,安装新的ChromeDirver驱动,具体步骤:(1)查看Chrome版本(2)下载chromedriver.exe(3)打开chromedriver.exe存放位置,将新的chromedriver.exe代替旧的chromedriver.exe。
Chrome 115之后的版本
和之前一样的报错Message: session not created: This version of ChromeDriver only supports Chrome version 113 Current browser version is 119.0.6045.160 with binary
该报错提示,当前的driver只支持113版本的Chrome浏览器,但是我的Chrome已经自动更新到119版本了,我们要想运行脚本,就要更新driver,把driver更新到119。
但是,当访问了之前下载镜像的网站,结果发现没有119版本的driver可以下载,最多只到114版本,如下图:
去官网上进行查看:chromedriver官网
官网发了新的通知,并给了新的Chromedriver下载地址:Chromedriver下载地址,我们可以在这个网址下载对应版本的Chromedriver,如下图:
复制链接直接下载即可,下载完成之后,解压拖入之前driver所在的文件夹即可使用,完成之后,再次运行脚本,运行即恢复正常。
(3)配置环境
下载完成了,将chromedriver.exe的路径添加到环境变量Path中。
chromedriver.exe存放位置:
(4)使用WebDriver
打开命令行窗口,依次执行下面操作:
(1) 输入“python”
(2) 输入“from selenium import webdriver”
(3) 输入“driver = webdriver.Chrome()”
(4) 输入“driver.get(“https://www.baidu.com”)”
(5) 输入“driver.quit()”退出浏览器
上面一系列的操作,可以验证chromedriver和所使用的浏览器版本是否匹配,是否安装成功。
浏览器驱动
1.Chrome
115之前的版本:
-
Chrome浏览器驱动chromedriver驱动官方
-
淘宝镜像地址
115之后的版本 :
- Chromedriver下载地址
- 谷歌历史版本
2.IE
- IE浏览器驱动IEDriverServer
3.Edge
- Edge浏览器驱动MicrosoftWebDriver
4.Firefox
- 火狐浏览器历史版本
- geckodriver驱动
5.Opera
- Opera浏览器驱动operadriver