python+selenium-跳过登录验证码
前言
最近因为学习任务,需要登录学习网站观看在线视频。由于工作比较忙,没有多余时间去观看。突然想到不是可以自动化去投机,完成学习任务嘛。
开始复习之前用过的代码。发现登录有个坑,就是验证码的问题,关于验证码想到一共四个办法:
- 让开发注释掉验证码。 不现实 pass
- 让开发设置一个万能验证码,只要输入这个验证码,就通过 不现实 pass
- 跳过验证码直接登录成功。查阅了一些资料,发现可行
- 调用一些验证码识别库 可行
发现第三条最容易实现,采用selenium-跳过登录验证码
实现思路
- 打开登录页面,获取登录前后cookie,进行对比(可以抓包,也可以调用get_cookies()等方法实现)
- 对比两次获取的cookie,找出登录后多出来的cookie
- 在代码里加上写入之前登录后的cookie,刷新页面,get对应页面即可
代码案例
获取登录前后cookie,返回登录后cookie

获取登录后cookie,修改当前cookie,进行后续操作

cookie1为登录前cookie
cookie2为登录后cookie
好多字段不一样,所以用登录后cookie全覆盖

其他
当前代码具有局限性,如果某些网站打开没法进行这样操作,即使写入cookie,第二次打开的网页,仍然是登录页,即使写了登录后的网址
本文来自博客园,作者:橘德德呀,转载请注明原文链接:https://www.cnblogs.com/judede/p/15175052.html

浙公网安备 33010602011771号