OpenCV库滑破解块验证码
声明:本文只作学习研究,禁止用于非法用途,否则后果自负,如有侵权,请告知删除,谢谢!
如果大家觉得我的文章不错,还可以关注我的个人公众号:【python三剑客】主要分享与输出Python爬虫技术栈有关的相关的,面试真题、实战案例、验证码破解、js逆向系列、移动端和PC自动化系列。我们一起学习、成长!今年的初定目标50篇干货
今天为大家讲解一下如何通过OpenCV图像识别库破解滑块验证码
此方法能够为一下情景使用:
已处理的案例:头号、京、抖*、企*号等
一、处理滑块主要流程步骤
- 前置配置(安装相关的库)
- 验证码图片下载
- 计算偏移量
- 实现拟人化滑动效果
1.安装
selenium 支持 python2.7 以及 python3.5 等主流 python 版本,其安装较为简单,有网的环境下,打开cmd输入即可自动安装: pip install selenium
2.webdriver
selenium 安装完成后,下载所选浏览器的 webdriver,本文以 ChromeDriver为例,下载解压后切记将.exe文件放入对应Python应用程序的同级目录下,以确保将 webdriver 的路径添加至系统 PATH 变量中。同时还需将.exe文件放入Chrome应用程序的同级目录下,注意下载的ChromeDriver版本需与Chrome浏览器版本对应才可使用。ChromeDriver下载地址
3.open-cv
在计算机视觉项目的开发中,OpenCV作为较大众的开源库,拥有了丰富的常用图像处理函数库,采用C/C++语言编写,可以运行在Linux/Windows/Mac等操作系统上,能够快速的实现一些图像处理和识别的任务。此外,OpenCV还提供了Java、python、cuda等的使用接口、机器学习的基础算法调用,从而使得图像处理和图像分析变得更加易于上手,让开发人员更多的精力花在算法的设计上。
pip install opencv-python
pip install opencv-python==3.3.0.10 -i https://pypi.doubanio.com/simple
二、获取图片并保存到本地
def slider_verify(self):
# 根据偏移量和手动操作模拟计算移动轨迹
try_verify = 0
SigninPage = self.driver.current_url
while try_verify >= 10:
try:
time.sleep(random.uniform(4, 6))
CurrentPage = self.driver.current_url
if SigninPage != CurrentPage:
print