超级鹰:selenium专门用来破解各种验证码

目前,有相当一部分的验证码是:

  1. 英文数字
  2. 中文汉子
  3. 纯英文
  4. 纯数字
  5. 任意特殊字符
    超级鹰:selenium专门用来破解各种验证码_第1张图片
  6. 坐标选择识别
    超级鹰:selenium专门用来破解各种验证码_第2张图片
    特别:对于极验3.0滑动验证码, 正在尝试看可以不用这个解决,毕竟有坐标
二、使用方法:

1. 先祖册超级鹰账号并申请软件ID,注册页面链接为
https://www.chaojiying.com/user/reg/
注册账号后,点击立即充值,充个俩块钱,2000积分,可以玩好几天
超级鹰:selenium专门用来破解各种验证码_第3张图片
2. 然后在后台开发商中心添加软件ID
超级鹰:selenium专门用来破解各种验证码_第4张图片
3. 点击“生成一个软件ID”
在这里插入图片描述
4. 然后就会获得一个软件ID号,记住这个号,代码里需要用到
在这里插入图片描述
5. 然后下载开发者文档,用什么语言的,就下载相应的API,这里用python为案例:
超级鹰:selenium专门用来破解各种验证码_第5张图片
6.解压后,还需要改改一点地方:(下面备注的地方)

import requests
from hashlib import md5

class Chaojiying_Client(object):

    def __init__(self, username, password, soft_id):
        self.username = username
        # todo:更改点一
        self.password = md5(password.encode("utf-8")).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()


if __name__ == '__main__':
	# todo: 更改点二,输入注册的账号与密码,软件ID
    chaojiying = Chaojiying_Client('超级鹰登入账号', '超级鹰密码', '软件ID') 
    # todo: 更改点三:本地图片文件路径 来替换 a.jpg 有时WIN系统须要// 
    im = open('full_page.png', 'rb').read()		 											
    # todo: 更改点四:1902 验证码类型,在官网测试案例可以查看
    print(chaojiying.PostPic(im, 9101))   

测试用图:
在这里插入图片描述
结果:字典类型的返回值,也就是chaojiying.PostPic(im, 9101)的返回值,键“pic_str"的值就是结果

{‘err_no’: 0, ‘err_str’: ‘OK’, ‘pic_id’: ‘6064522022288200019’, ‘pic_str’: ‘7261’, ‘md5’: ‘d4990cca4eadb583e6937293d68f8047’}

你可能感兴趣的:(爬虫)