国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

利用打碼兔和超人打碼自封裝的打碼類分享

2020-02-23 05:15:53
字體:
來源:轉載
供稿:網友

自封裝的打碼類, windows下建議用打碼兔(調用的官方dll),linux下建議超人打碼(http api)

代碼如下:
# coding:utf-8
from ctypes import *
import requests
import json
import random
import binascii
from config import config

class Dama2():
 """打碼兔打碼."""
 _username = ''
 _password = ''
 __attrs__ = ['DM', 'username', 'password', 'softuuid', 'timeout']

 def __init__(self):
  self.DM = WinDLL('lib/CrackCaptchaAPI.dll')
  if not self._username:
   Dama2._username = config['dama']['dama2']['username']
   Dama2._password = config['dama']['dama2']['password']
  self.username = c_char_p(self._username)
  self.password = c_char_p(self._password)
  self.softuuid = c_char_p('6fbc06efdc777eee854842572102daec')
  self.timeout = c_ushort(30)

 def recv_byte(self, imgdata, imgtype=42):
  # imgdata = c_void_p(imgdata)
  imgleng = c_uint(len(imgdata))
  imgtype = c_ulong(imgtype)
  res = c_char_p('')

  code = self.DM.D2Buf(self.softuuid, self.username, self.password, imgdata, imgleng, self.timeout, imgtype, res)
  if code > 0:
   return res.value
  return False

 def report_err(self, imgid):
  return False


class Chaoren():
 _username = ''
 _password = ''
 __attrs__ = ['DM', 'username', 'password', 'softuuid', 'timeout']

 def __init__(self):
  if not self._username:
   Chaoren._username = config['dama']['chaoren']['username']
   Chaoren._password = config['dama']['chaoren']['password']

  self.s = requests.Session()
  self.s.encoding = 'utf-8'
  self.s.timeout = 16
  self.data = {
   'username': self.username,
   'password': self.password,
   'softid': '1234',#1234換成自己的
   'imgid': '',
   'imgdata': ''
  }

 def get_left_point(self):
  try:
   r = self.s.post('http://apib.sz789.net:88/GetUserInfo.ashx', self.data)
   return r.json()
  except requests.ConnectionError:
   return self.get_left_point()
  except:
   return False

 def recv_byte(self, imgdata):
  self.data['imgdata'] = binascii.b2a_hex(imgdata).upper()
  try:
   r = self.s.post('http://apib.sz789.net:88/RecvByte.ashx', self.data)
   res = r.json()
   if res[u'info'] == -1:
    self.report_err(res[u'imgid'])  # 識別錯誤
    return False

   return r.json()[u'result']

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长寿区| 如皋市| 大渡口区| 湄潭县| 交口县| 中西区| 滦平县| 天峨县| 辉南县| 栾川县| 大竹县| 钦州市| 宁化县| 都兰县| 玛多县| 望江县| 临漳县| 灵璧县| 兰考县| 平原县| 常熟市| 马关县| 洪湖市| 旺苍县| 宝清县| 靖边县| 隆德县| 龙陵县| 阿拉尔市| 柘荣县| 永昌县| 龙山县| 深圳市| 西峡县| 海阳市| 宜兰县| 常山县| 噶尔县| 获嘉县| 宝山区| 墨玉县|