本文只是作者
klinson以学习笔记的形式记录,不是特别规范的学习教程,希望对大家学习selenium框架上有所帮助
Selenium是什么东西
Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成。
Selenium有多种不同的实习语言,常见的有Python和JAVA,本文我们将要Python进行示范讲解
可以用来做什么
- web应用的自动化测试:Selenium的本职工作,即网站系统的自动化黑盒测试工具;
- 爬虫:因为Selenium可以模拟人为的访问网页,相对更加安全难以发现,缺点就是有点慢
安装
Selenium 支持Python2和Python3的环境,这里我将使用的是Python3环境
安装Python3
Python3的环境安装教程很多,这里不做赘述,可以参考Python3 环境搭建 | 菜鸟教程安装Selenium
通过pip直接可以安装
pip install selenium
- 安装浏览器以及对应的驱动程序
Mozilla Firefox
直接下载最新版火狐浏览器和最新版程序即可使用
火狐浏览器下载地址:firefox官网
geckodriver驱动程序下载地址:https://github.com/mozilla/geckodriver/releasesGoogle Chrome
注意一定要对应版本,否则用不了
浏览器下载地址:chrome官网
chromedriver驱动程序下载地址:官方下载 备用下载
驱动程序文件目录内notes.txt文件会注明支持版本,文末也会附上常见的版本对应关系表
如果嫌麻烦,这里可以直接提供我正在用的版本程序:
https://wws.lanzoui.com/b02og0t9g 密码:4j9j
版本不一致的报错信息:
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 87
Current browser version is 92.0.4515.159 with binary path C:\Users\admin\AppData\Local\Google\Chrome\Application\chrome.exe
- Internet Explorer
选择与selenium版本对应的版本即可,比如你是3.141.0版本就选择3.141.0对应的驱动
不知道自己版本的可以通过pip list查询,找到selenium那一栏即可
驱动程序下载地址:下载地址
配置:
(1)internet选项-去掉保护模式
打开IE -> 设置 -> Internet选项 -> 安全 -> 去掉四个区域的启用保护模式前的对勾
image.png
(2)internet选项-去掉增强保护模式
打开IE -> 设置 -> Internet选项 -> 高级 -> 去掉启用增强保护模式前的对勾
image.png
附:chromedriver与chrome的对应关系表:
| chromedriver版本 | 支持的Chrome版本 |
|---|---|
| v2.43 | v69-71 |
| v2.42 | v68-70 |
| v2.41 | v67-69 |
| v2.40 | v66-68 |
| v2.39 | v66-68 |
| v2.38 | v65-67 |
| v2.37 | v64-66 |
| v2.36 | v63-65 |
| v2.35 | v62-64 |
| v2.34 | v61-63 |
| v2.33 | v60-62 |
| v2.32 | v59-61 |
| v2.31 | v58-60 |
| v2.30 | v58-60 |
| v2.29 | v56-58 |
| v2.28 | v55-57 |
| v2.27 | v54-56 |
| v2.26 | v53-55 |
| v2.25 | v53-55 |
| v2.24 | v52-54 |
| v2.23 | v51-53 |
| v2.22 | v49-52 |
| v2.21 | v46-50 |
| v2.20 | v43-48 |
| v2.19 | v43-47 |
| v2.18 | v43-46 |
| v2.17 | v42-43 |
| v2.13 | v42-45 |
| v2.15 | v40-43 |
| v2.14 | v39-42 |
| v2.13 | v38-41 |
| v2.12 | v36-40 |
| v2.11 | v36-40 |
| v2.10 | v33-36 |
| v2.9 | v31-34 |
| v2.8 | v30-33 |
| v2.7 | v30-33 |
| v2.6 | v29-32 |
| v2.5 | v29-32 |
| v2.4 | v29-32 |

