Python爬虫破解滑动验证码 用Python爬虫破解滑动验证码的案例解析

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Python爬虫破解滑动验证码 用Python爬虫破解滑动验证码的案例解析

不加班的程序员丶   2021-05-06 我要评论
想了解用Python爬虫破解滑动验证码的案例解析的相关内容吗,不加班的程序员丶在本文为您仔细讲解Python爬虫破解滑动验证码的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Python爬虫破解滑动验证码,Python爬虫滑动验证码,Python滑动验证码,下面大家一起来学习吧。

做爬虫总会遇到各种各样的反爬限制,反爬的第一道防线往往在登录就出现了,为了限制爬虫自动登录,各家使出了浑身解数,所谓道高一尺魔高一丈。

今天分享个如何简单处理滑动图片的验证码的案例。

图片


类似这种拖动滑块移动到图片中缺口位置与之重合的登录验证在很多网站或者APP都比较常见,因为它对真实用户体验友好,容易识别。同时也能拦截掉大部分初级爬虫。

作为一只python爬虫,如何正确地自动完成这个验证过程呢?

先来分析下,核心问题其实是要怎么样找到目标缺口的位置,一旦知道了位置,我们就可以借用selenium等工具完成拖动的操作。

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

图片

opencv 是什么?

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

直接安装

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

处理后的效果

图片

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

轮廓检测

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

图片

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

轮廓的面积大概是6000到8000之间,周长在300到500之间, 最后用外接矩形获取该轮廓图的坐标位置和宽高大小。

图片

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

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们