1、对于一些网站现在需要输入验证码才能登录,小编这里介绍怎么通过cookie来跳过验证码的登录:
例如:登录百度的账号,第三行有一列验证码的登录界面如图:
2、这时候我们需要通过获取cookie,来跳过此步骤,这样测试在测试的过程中就不会要求登录的功能了;
3、怎么样获取cookie信息:
1.安装抓包工具fiddler
2.设置fiddler,允许HTTPS访问(具体怎么设置,大家可以自己百度一下,这里就不在具体介绍了,小编这里只插入几个图片,大家看图片的步骤走就好了)
4.设置完成后,点击浏览器,打开百度,然后点击登录,输入用户名密码,输入验证码,这时候打开fidler,然后在切回浏览器,点击百度的登录账号;
5.查看fiddler的抓包界面:
点击点击inspector界面,选择cookie界面,查看百度ID,和BDUSS(具体到工作中哪些可以获取验证的字段,哪些是ID的字段,要和具体的开发人员确认的)
6.接下来我们要吧cookie信息加载到对应的代码里面:
1 from selenium import webdriver 2 from time import sleep 3 4 driver=webdriver.Chrome() 5 driver.get("http://www.baidu.com") 6 #把fiddler获取的cookie信息加载进来;通过Python字典的形式; 7 8 driver.add_cookie({'name':'BAIDUID','value':'E6913D85A9257BBA709CA699F5F3B846:SL=0:NR=10:FG=1'}) 9 10 driver.add_cookie({'name':'BDUSS','value':'80ZS1GYTB6OTlsLWlLc3BCeGVmUGdWMjdFMzZ0Ynk5eXk2b2hBU3FmaFhPRHRhQVFBQUFBJCQAAAAAAAAAAAEAAABcoBxVxbawobChNHl2NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFerE1pXqxNaNk'}) 11 sleep(3) 12 #刷新页面 13 driver.refresh() 14 sleep(3)