用Python爬虫破解滑动验证码

用Python爬虫破解滑动验证码_第1张图片

我们可以借用opencv来解决这个问题,主要步骤:

用Python爬虫破解滑动验证码_第2张图片

opencv 是什么?

OpenCV(Open Source Computer Vision Library)是开放源代码计算机视觉库,主要算法涉及图像处理、计算机视觉和机器学习相关方法,可用于开发实时的图像处理、计算机视觉以及模式识别程序。

直接安装

图片

首先将图片进行高斯模糊处理,高斯模糊的主要作用是减少图像的噪声,用于预处理阶段。

用Python爬虫破解滑动验证码_第3张图片

处理后的效果

用Python爬虫破解滑动验证码_第4张图片

接着用Canny边缘检测到得到一个包含“窄边界”的二值图像。所谓二值图像就是黑白图,只有黑色和白色。

用Python爬虫破解滑动验证码_第5张图片

用Python爬虫破解滑动验证码_第6张图片

轮廓检测

用Python爬虫破解滑动验证码_第7张图片

找出所有的轮廓,并用红色线框将其绘制标识出来了,看出来大大小小有几十个轮廓

用Python爬虫破解滑动验证码_第8张图片

剩下的问题就好办了,我们只需要对轮廓的面积或者周长范围做限制,就能过滤出目标轮廓的位置, 前提是我们对目标位置的轮廓大小是预先确定的。

用Python爬虫破解滑动验证码_第9张图片

轮廓的面积大概是6000到8000之间(可以根据自己需要的调节尺寸),周长在300到500之间, 最后用外接矩形获取该轮廓图的坐标位置和宽高大小。

用Python爬虫破解滑动验证码_第10张图片

如上就找到了目标位置,剩下的工作就是将滑块移动到指定位置即可

到此这篇关于用Python爬虫破解滑动验证码的案例解析的文章就介绍到这了

需要相关爬虫资料的可以扫描领取

python超全资料库安装包学习路线项目源码免费分享

你可能感兴趣的:(python,node.js,php,c语言)