使用CV2解决滑动验证码

本文介绍了使用Python的opencv-python库解决滑动验证码的方法。从初始化浏览器、保存图片到识别缺口,再到模拟轨迹,通过高中物理知识计算滑动轨迹,最终实现验证码的自动滑动验证。文中分享了git项目地址和主要函数的构建思路。
摘要由CSDN通过智能技术生成

前言

由于工作需要,开始研究滑块验证码,毕竟咱是搞数据的,不是搞图像识别的,根据以往的经验,先去git上面找一下相关项目,找到一个大佬写的心得。由于太久远了,就简单的改了改,发现了一个Python的新模块,人生苦短,我用Python,诚不欺我呀!
下面是git地址
git地址

分析

这里主要用到了opencv-python,这个有点太大了,想要完全吃透,起码也要一个月。最终决定:能用就行
按照思路:
1.初始化浏览器

def __init__(self, url, username, password):
        """
        初始化浏览器配置,设置常亮

        :param url : 目标网址
        :param username : 用户名
        :param password : 密码

        """
        # 无头浏览器,有需要时可以打开, 由于我要看到滑动过程 所以暂时不选择无头
        # profile = webdriver.FirefoxProfile()
        self.browser = webdriver.Chrome()
        self.wait = WebDriverWait(self.browser, 30)
        self.url = url
        self.username = username
        self.password = password

2.保存图片

def save_img(block_img_url):
        """
        保存图片

        :param block_img_url: 图片url
        :return:
        """
        try:
            img = requests.get(block_img_url).content
            with open('block.jpeg', "wb") as f:
                f.write(img)
            return True
        except:
            return False

3.识别缺口,这里主要就是用到了opencv-python

def get_gap():
        """
        识别缺口

        :return:
        """
        img = cv.imread('block.jpeg')
        # 处理高斯滤波
        G_Blur = cv.GaussianBlur(img,(5, 
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值