极速三分快3开户_What?废柴, 模拟登陆,代码控制滑动验证真的很难吗?Are you kidding???

  • 时间:
  • 浏览:1

1.简介

  在前边的python接口自动化的事先 ,让我们或者博客园的登录机制的改变,没办法 用博客园的登录测试接口。没办法 博客园现在变成了滑动验证登录,或者现在绝大多数的登录都变成这一 滑动验证和验证码的登录验证机制。让我们真的没办法 某些妙招 补救这一 验证机制的登录啥过后?真的是束手无策啥过后?答案是:NO,今天宏哥教你怎样才能用代码来模拟鼠标滑动,最终验证成功后,最后成功登录。没办法 为什么么么会做了,思路了???

2.让我们首先理解滑动验证的原理

滑动验证难点

1.电脑怎样才能自动点击滑动块

2.电脑怎样才能检测 缺口位置(如图;)

3.补救这三个 难题妙招

  1. 怎样才能自动点击滑动块,也可是 图中的左下方圈起来的位置,让我们时要使用selenium
  2. 为什么么么会计算缺口的位置,让我们时要通过PIL库的image

4.博客园登录

  既然有了补救妙招 ,让我们看一下博客园的登录思路:

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

(2)其次让我们时要获取2张验证码图片,带缺口和不带缺口;

(3)最后让我们时要获取缺口位置。遍历带缺口的图片和不带缺口的图片的每个像素,利用 is_pixel_equal() 妙招 判断两张图片同一位置的像素算不算 相同。比较两张图 RGB 的绝对值算不算 均小于定义的阈值 thresold。或者绝对值均在阈值之内,则代表像素点相同,继续遍历。或者代表不相同的像素点,可是 缺口的位置。

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

下图可是 用来说明怎样才能对比图片:

 思路让我们清楚了,原来们就结束了了撸代码吧。

4.1代码实现:

4.2参考代码:

# coding=utf-8