Python教程

selenium python学习笔记之八 窗口截图、验证码处理

本文主要是介绍selenium python学习笔记之八 窗口截图、验证码处理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、窗口截图

  1.1 把当前操作的页面,截图保存到指定位置

  为什么要保存截图?

    自动化脚本是由程序去执行的,因此有时候打印的错误信息并不是十分准确,如果在执行出错的时候对当前窗口截图保存,那么通过截图就可以非常直观的看到出错的原因

  1.2 窗口截图的方法

    在selenium中提供了截图方法,我们只需要调用即可

    方法:driver.get_screenshot_as_file(imgepath) imagepath 图片的保存路径

      注意:截图的文件名必须是PNG结尾

          filename中的文件目录必须手动创建

2、验证码处理

2.1 什么是验证码?

  验证码就是一种随机生成的信息(数字、字母、汉字、图片、算术题)为了防止恶意的请求行为,增加应用的安全性

  自动化过程中也是需要进行注册或者登陆的操作,所以需要处理验证码

2.2 验证码处理方式

  -去掉验证码  由开发操作,用在测试环境

  -设置万能验证码  由开发操作,一般也只使用在测试环境

  -验证码识别技术   由于技术难度较高,识别率很难达到100%-一般不建议使用

  -记录cookie  通过保存cookie来跳过登陆的操作

2.3 cookie原理

  --cookie 是由web服务器生成的,并且保存在用户浏览器上的小文本文件,它可以包含用户相关的信息

  --cookie的数据格式:键值对组成,python中的字典

  --cookie产生:客户端请求服务器,如果服务器需要记录该用户状态,就向客户端浏览器颁发一个cookie数据

  --cookie使用: 当浏览器再次请求该网站时,浏览器把请求的数据和cookie一起提交给服务器,服务器检查该cookie,以此来辨认用户状态

2.4 selenium操作cookie

  -driver.get_cookie(name) 获取指定名称的cookie信息,name为cookie的名称

  -driver.get_cookies  获取所有的cookie信息,返回的是一个列表

  -driver.add_cookie(dict_cookie)往浏览器驱动增加cookie dict-cookie是一个字典

  注意事项: 如何确定哪个cookie是用来控制用户权限的?

  --可以问开发的同学

  --针对登陆前后的cookie进行对比,比登陆前多的cookie可以用来控制用户权限等

  --手动登陆之后不能退出,退出就相当于cookie无效了

  

3、文件上传

  -需要安装 autoit_V3_setup.exe 这个工具。此工具使用案例查看windows窗口信息及控件信息的

  -安装pyautoit模块

    -解压payautoit-master.zip文件

    -在windows窗口进入到解压目录后,再在地址栏输入cmd python setup.py install

这篇关于selenium python学习笔记之八 窗口截图、验证码处理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!