最近无聊。又从新装了个seleniumhtml
果真时代变了。安装的时候的方法和之前不太同样了。所以以为有必要单列出来加以说明python
另外备注:测试小伙伴们。安装此类工具报错。尝试如下两个方案之一:web
1.请转stackoverflowchrome
2.code reviewwindows
下面以第二种方法解决安装问题设计模式
若是你还看的是非官方文档的安装使用方法。而是某些旧社会的博客。那么极可能你就这样中奖了。api
正确的安装姿式应该是这样的(以 chrome + python + selenium 为例):浏览器
1. 打开 https://chromedriver.storage.googleapis.com/index.html框架
2. 找到最新版本(备注:2.30表明的版本大于2.9.此处2.9至关于2.09.不得不吐槽一下这个版本号设定)函数
3. 下载对应版本(备注:windows平台下。没有64位exe插件。可是32位的能够兼容64位)
4. 确认已安装的python版本(大于selenium标注的版本。通常而言最新版是向下兼容3.x的版本的。)
5. 本身下载selenium包 或者使用 pip install selenium 命令解决问题
至此。安装已经完成(感受比当年用的时候要更快)
接下来是使用的方法:
A. 示例代码
B. 内容说明
1. 第八行必须传入executable的值。(即将截图中代码第八行改成: driver = webdriver.Chrome(executable).)
此处因为早先的selenium的设计模式。以前selenium是经过环境变量设置来识别执行路径的。
如今源码的相关部分已经更改。所以使用selenium也无需配置环境变量了。
2. 第十行必须使用完整的url连接(url包含前缀http://或https://)。不然没法解析域名
C. 针对B1的附加说明
找出这个问题。首先看报错内容(不传递绝对路径,即driver = webdriver.Chrome()):
而后查看源码。能够发现。构造方法(def __init__)中。只有executable是没有默认值的。所以必须在使用webdriver.Chrome的时候传递路径以初始化该变量。不然报错。
这样作的好处就是。在使用selenium的时候,多个浏览器不再用分别配置环境变量了。把全部的驱动程序放在项目文件目录中。只须要在启动的时候设定指向位置便可
固然。也能够改动源码。给这个变量一个default值。所以其余浏览器的使用就很少加说明了。
最后。用driver来作声明变量其实并非特别好的设计模式。若是selenium要作自动化的话,脚本必须封装为函数
调用则使用相似unittest框架的东西来作,这样的话,内部变量基本上会使用以下写法
# 初始化函数
def setUp(self):
self.browser = webdriver.Chorme(executable)
# 执行脚本
def test_case1(self):
self.browser.get('http://www.baidu.com')
......
这样作,就能够保证环境和数据配置。而且可使用不少现有的方法。是比较推荐的写法。
若是有进阶的兴趣。推荐去看《python web开发测试驱动方法》。对于初学者理解功能测试模式仍是颇有帮助的。