python3+selenium3+ie9初体验

来源:互联网 发布:韦德职业生涯总数据 编辑:程序博客网 时间:2024/06/14 01:12

需求

为什么要研究这套自动化web测试模块呢?

因为纯手工的去每天给网站录信息很麻烦,时间太浪费了,所以来自己写一套自动化脚本实现读取文件中的数据格式,自动打开web浏览器,自动填充我想要的数据,自动点击表单提交,我只需要整理好数据即可,剩下的交给脚本自动完成就好了啊。。。

环境

python 版本:pyhont3.6.1selenium 版本:selenium3.5.0需要自动化的浏览器版本: IE9

python3安装selenium模块

首先要安装这个模块,这里熟悉python的同学很简单的就可以安装上了pip install selenium
#这里多说一句可以利用下面的代码查看模块的版本pip show [模块名]

这里写图片描述

IE的对应驱动下载地址

使用这个模块的前提是需要每个浏览器的驱动,我用到了IE,所以只提供IE下载地址,剩下的浏览器驱动可以自行查询,找这个地址找了半天= =真心难找。。。。

下载地址:https://www.nuget.org/packages?q=IEDriver

这里写图片描述

这里写图片描述

WebDriverIE的放置位置

看到网上分了两种方法,个人喜欢简单,所以采用简单的方法二(个人认为撸码简单…)。
方法一:我们需要将下好的zip解压出来的IEDriverServer.exe放到环境变量可以读取的位置。(有可能失败,因为我操作的公司系统是无法添加环境变量的,或者说是添加了可能环境变量也没有生效)

方法一的配置:
将IEDriverServer.exe 放入到Python的Script下,因为python安装的时候大家肯定是配置好了环境变量的,所以这样就不用冗余的再去将驱动的地址配置到环境变量中去了。
如果你没有配置好环境变量,那自己添加上就行了,如下图:
这里写图片描述
然后我运行代码失败了,如下图:

这里写图片描述

这里写图片描述

方法二:我们将用代码直接加载ie驱动即可,继续往下看开始撸码部分就行。

开始撸码

模块安装完,驱动下载好,位置放置好,一切准备就绪了,可以开始撸码了。

#coding=utf-8from selenium import webdriver#IE的驱动位置iedriver = "Z:\python3.6\Scripts\IEDriverServer.exe"#将IE的驱动通过路径直接放入方法中browser = webdriver.Ie(iedriver)#访问百度browser.get('http://www.baidu.com/')

F5运行一下,会弹出一个下图的cmd,若是这样说明调用的ie驱动其实是成功了:

这里写图片描述

但是,接下来就报错了,报错如下:

selenium.common.exceptions.WebDriverException: Message: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones.

这里写图片描述

解决方案如下图所示:这是ie浏览器的一种保护模式我们需要打开IEInternet选项->安全->将下面的四个选项改成一致即可

这里写图片描述

最终结果

无论你是用那种方式(CMD,IDLE)去运行脚本,
首先看到的是一个cmd的ie驱动黑框,接下来就是下图:

这里写图片描述

结论

无论是哪种浏览器,首先这个web测试框架是需要要对应浏览器的驱动的,可能在这方面浪费的时间比较多。接下来是加载驱动,一旦加载成功,接下来的调用模块中的内容,开始撸码就可以随心所欲了。。。

有了不便就是干,有了需求就是干!学了python就是为了贴近解决生活中种种不便利而存在的!~

原创粉丝点击