【图片识别】滑块缺口定位

文章目录

  • 前言
  • 一、分析
  • 二、底图还原
  • 三、缺口定位


前言

目标网站:aHR0cDovL2FwaS50Z25ldC5jb20v

这篇没有涉及到逆向的东西哦,主要一个滑块缺口如何定位,以及裂开的底图还原


一、分析

打开网站后,就会出现滑块验证

【图片识别】滑块缺口定位_第1张图片

然后抓包看下 滑块出现的接口
【图片识别】滑块缺口定位_第2张图片
normal、small 分别是底图和滑块图
position_y 是滑块的y坐标
array 的字符传是用于底图还原的

【图片识别】滑块缺口定位_第3张图片

二、底图还原

先来观察下底图吧,大小是300*200,总共呗切片分成20分,上下平分,左右10等份,刚好array里的数值是20位,并且是从原点位置开始,吧当前切片移动到array对应的位置,大于9的会进入下一行
【图片识别】滑块缺口定位_第4张图片

然后通过opencv对图片进行剪切拼接,即可得到原图
【图片识别】滑块缺口定位_第5张图片
【图片识别】滑块缺口定位_第6张图片


三、缺口定位

图片还原后,由于缺口位置有一个明显的矩形阴影,即可通过opencv.template_match进行模板匹配,从而定位到缺口的位置。
【图片识别】滑块缺口定位_第7张图片

在匹配时候,可以对图片进行二值化、轮廓检测等处理,来达到理想的状态,目前这个图片直接用模板匹配的效果已经很不错了。

【图片识别】滑块缺口定位_第8张图片

然后对轨迹进行模拟即可去请求接口,验证位置是否正确,可以看出,基本都是正确的哦
【图片识别】滑块缺口定位_第9张图片

你可能感兴趣的:(验证码,反爬,python)