51Testing软件测试论坛
标题:
自动化测试 -- 通过Cookie跳过登录验证码
[打印本页]
作者:
乐哈哈yoyo
时间:
2017-6-19 10:47
标题:
自动化测试 -- 通过Cookie跳过登录验证码
今天,详细的介绍一下通过Cookie跳转验证码这种方式。
准备工具:
------------------
fiddler
Python+selenium
------------------
以百度登录为例。
[attach]106590[/attach]
验证码是汉字的,我想通过程序识别起来有点难度,也会比较麻烦。
接下来开始动手。
1、开启Fiddler 工具,像这样!
[attach]106591[/attach]
2、通过浏览器登录正常登录百度账号。像这样!
[attach]106592[/attach]
3、通过Fiddler获取登录请求的Cookie。找到Host为“passport.baidu.com”的URL,在右侧窗口查看该请求的Cookie。
[attach]106593[/attach]
然后,找到重要的两个参数“BAIDUID”和“BDUSS”。
4、编写Selenium自动化测试脚本,跳过登录。
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
# 添加Cookie
driver.add_cookie({'name':'BAIDUID','value':'AAAAAAAAAAAAAA:FG=1'})
driver.add_cookie({'name':'BDUSS','value':'AAAAAAAAAAAAAAAAAAAAAAAAAA'})
# 刷新页面
driver.refresh()
# 获取登录用户名并打印
username = driver.find_element_by_class_name("user-name").text
print(username)
#关闭浏览器
driver.quit()
复制代码
首先,访问百度首页,处于未登录状态。
然后,通过Selenium所提供add_cookie()方法添加Cookie信息。
最后,刷新页面,现在已经是登录状态了,获取登录之后的用户名并打印。
作者:
草帽路飞UU
时间:
2017-6-19 12:02
成功啦,cookie在chrome浏览器里自己找的。
作者:
jingzizx
时间:
2017-6-19 12:29
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2