zoukankan      html  css  js  c++  java
  • 超级鹰破解图片验证码脚本

    """
    超级鹰
    """
    
    from hashlib import md5
    import requests
    class Chaojiying_Client(object):
    
        def __init__(self, username, password, soft_id):
            self.username = username
            password = password.encode('utf8')
            self.password = md5(password).hexdigest()
            self.soft_id = soft_id
            self.base_params = {
                'user': self.username,
                'pass2': self.password,
                'softid': self.soft_id,
            }
            self.headers = {
                'Connection': 'Keep-Alive',
                'User-Agent': 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)',
            }
    
        def PostPic(self, im, codetype):
            """
            im: 图片字节
            codetype: 题目类型 参考 http://www.chaojiying.com/price.html
            """
            params = {
                'codetype': codetype,
            }
            params.update(self.base_params)
            files = {'userfile': ('ccc.jpg', im)}
            r = requests.post('http://upload.chaojiying.net/Upload/Processing.php', data=params, files=files,headers=self.headers)
            return r.json()
    
        def ReportError(self, im_id):
            """
            im_id:报错题目的图片ID
            """
            params = {
                'id': im_id,
            }
            params.update(self.base_params)
            r = requests.post('http://upload.chaojiying.net/Upload/ReportError.php', data=params, headers=self.headers)
            return r.json()
    
    # 主函数
    def get_imgcode(imgurl):
        # 请求验证码图片地址
        res=requests.get(imgurl)
        img=res.content
        # 写入本地
        with open ('./img/a.jpg','wb') as f:
            f.write(img)
        # 超级鹰读图解码
        supering = Chaojiying_Client('17679962*', '0820@*', '9013*')  # 用户中心>>软件ID 生成一个替换 96001{三个参数值见D:汇界首单元测试api_unittest	ools本地脚本}
        im = open('./img/a.jpg', 'rb').read()  # 本地图片文件路径
        result = supering.PostPic(im, 1902)  # 1902 验证码类型  官方网站>>价格体系 3.4+版 print 后要加()
        code = result['pic_str']  # 得到的验证码
        return code
    
    # if __name__ == '__main__':
    #     imgcode=get_imgcode("http://121.36.61.93:8001/captchas/a73989d0-75ad-11eb-86b8-31e2c2832380/LOGIN?rmd=1614656408092")
    #     print(imgcode)
    种一棵树最好的时间是十年前,其次是现在
  • 相关阅读:
    单元测试利器 JUnit 4 Mr
    firefox插件介绍 Mr
    js函数使用技巧集合 Mr
    单点登录
    2.SilverLight动态加载控件
    3.如何获取动态生成的SL控件的NAME值(一)
    ASP.Net中控件的EnableViewState属性 【转】
    三种在ASP.NET中重写URL的方法
    SQLHelper.cs
    c# IS与AS的使用方法
  • 原文地址:https://www.cnblogs.com/fairytalk/p/14468957.html
Copyright © 2011-2022 走看看