一 目标
用程序来识别并通过极验验证码的验证,包括分析识别思路、识别缺口位置、生成滑块拖动路径、模拟实现滑块拼合通过验证等步骤。
二 了解极验验证码
1 官网
2 原理
主要验证方法是拖动滑块拼合图像。若图像完全拼合,则验证成功,即表单成功提交,否则需要重新验证。
举例:魅族登录页面采用了极验验证码。https://login.flyme.cn/

三 识别思路
1 模拟点击验证按钮
2 识别滑动缺口的位置
3 模拟拖动滑块
四 实战
import time
from io import BytesIO
from PIL import Image
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
EMAIL = '798103175@qq.com'
PASSWORD = ''
BORDER = 6
INIT_LEFT = 60
class CrackGeetest():
def __init__(self):
self.url = 'https://account.geetest.com/login'
self.browser = webdriver.Chrome()
self.wait = WebDriverWait(self.browser, 20)
self.email = EMAIL
self.pass


305

被折叠的 条评论
为什么被折叠?



