好运pk10平台网址 _What?废柴, 模拟登陆,代码控制滑动验证真的很难吗?Are you kidding???

  • 时间:
  • 浏览:3

1.简介

  在前边的python接口自动化的过后,大伙原因博客园的登录机制的改变,这么 用博客园的登录测试接口。这么 博客园现在变成了滑动验证登录,有些现在绝大多数的登录都变成这种滑动验证和验证码的登录验证机制。大伙真的这么 有些最好的土办法正确处理这种验证机制的登录好久?真的是束手无策好久?答案是:NO,今天宏哥教你如保用代码来模拟鼠标滑动,最终验证成功后,最后成功登录。这么 为什么我做了,思路了???

2.大伙首先理解滑动验证的原理

滑动验证难点

1.电脑如保自动点击滑动块

2.电脑如保检测 缺口位置(如图;)

3.正确处理这原来难题图片最好的土办法

  1. 如保自动点击滑动块,也并且图中的左下方圈起来的位置,大伙还可不能不能使用selenium
  2. 为什么我计算缺口的位置,大伙还可不能不能通过PIL库的image

4.博客园登录

  既然有了正确处理最好的土办法,大伙看一下博客园的登录思路:

(1)首先大伙须要打开登录页面,并输入用户名和密码,点击登录按钮,弹出验证码图片;(这种比较简单也容易实现)

(2)其次大伙须要获取2张验证码图片,带缺口和不带缺口;

(3)最后大伙须要获取缺口位置。遍历带缺口的图片和不带缺口的图片的每个像素,利用 is_pixel_equal() 最好的土办法判断两张图片同一位置的像素有无 相同。比较两张图 RGB 的绝对值有无 均小于定义的阈值 thresold。原因绝对值均在阈值之内,则代表像素点相同,继续遍历。有些代表不相同的像素点,并且缺口的位置。

  通过对比两张图片还可不能不能发现,两张图片有两处明显不同的地方:原来是待拼合的滑块,原来是缺口。滑块的位置会老出在左边位置,缺口会老出在与滑块同一水平线的位置,全都缺口一般会在滑块的右侧。原因要寻找缺口,直接从滑块右侧寻找即可。这里直接设置遍历的起始横坐标为150,也并且从滑块的右侧始于了识别,原来 识别出的结果并且缺口的位置。

下图并且用来说明如保对比图片:

 思路大伙清楚了,原来 们就始于了撸代码吧。

4.1代码实现:

4.2参考代码:

# coding=utf-8