超详细的python爬虫破解反爬技术,手把手教你破解滑动验证码
程序员文章站
2022-06-30 17:37:41
滑动验证码的识别介绍 本节目标: 用程序识别极验滑动验证码的验证,包括分析识别思路、识别缺口位置、生成滑块拖动路径、模拟实现滑块拼合通过验证等步骤。 准备工作: 本次案例我们使用Python库是Selenium,浏览器为Chrome。请确保已安装Selenium库和ChromeDriver浏览器驱动 ......
滑动验证码的识别介绍
本节目标:
用程序识别极验滑动验证码的验证,包括分析识别思路、识别缺口位置、生成滑块拖动路径、模拟实现滑块拼合通过验证等步骤。 准备工作:
本次案例我们使用python库是selenium,浏览器为chrome。请确保已安装selenium库和chromedriver浏览器驱动。
了解极验滑动验证码:
极验滑动验证码官网为:http://www.geetest.com/
验证方式为拖动滑块拼合图像,若图像完全拼合,则验证成功,否则需要重新验证,如图所示:
实现步骤:
① 初始化
初始化链接地址、创建模拟浏览器对象、设置登录账户和密码等信息。
② 模拟登录填写,点开滑块验证
- 在实例化crackgeetest对象后调用crack()方法开始模拟登录验证...
- 调用open()方法,打开登录界面,获取账户和密码输入框节点,完成账户和密码的输入。
- 调用get_geetest_button()方法获取滑动验证按钮,并点击。
③ 获取并储存有无缺口的两张图片
- 首先获取无缺口的验证图片,并保存到本地
- 获取滑块对象,并执行点击,让浏览器中显示有缺口图片
- 获取有缺口的验证图片,并保存到本地
④ 获取缺口位置
- 对比两张图片的所有rbg像素点,得到不一样像素点的x值,即要移动的距离
⑤ 获取移动轨迹
模拟人的行为习惯(先匀加速拖动后匀减速拖动),把需要拖动的总距离分成一段一段小的轨迹
⑥ 按照轨迹拖动,完全验证
⑦ 完成登录