云打码实现验证码识别
云打码官网:http://www.yundama.com/
API接口:http://www.yundama.com/apidoc/YDM_SDK.html#DEMO
以下验证码识别使用的”pythonHTTP“方法:
1.注册开发者账号,进入开发者中心,点击”我的软件“→”添加新软件“,获取软件代码和通讯密钥;
2.调用示例:
import http.client, mimetypes, urllib, json, time, requests######################################################################class YDMHttp:apiurl = 'http://api.yundama.com/api.php'username = '' #用户名password = '' #用户密码appid = '' #填写开发者软件代码appkey = '' #填写开发者通讯密钥def __init__(self, username, password, appid, appkey):self.username = username self.password = passwordself.appid = str(appid)self.appkey = appkeydef request(self, fields, files=[]):response = self.post_url(self.apiurl, fields, files)response = json.loads(response)return responsedef balance(self):data = {'method': 'balance', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey}response = self.request(data)if (response):if (response['ret'] and response['ret'] < 0):return response['ret']else:return response['balance']else:return -9001def login(self):data = {'method': 'login', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey}response = self.request(data)if (response):if (response['ret'] and response['ret'] < 0):return response['ret']else:return response['uid']else:return -9001def upload(self, filename, codetype, timeout):data = {'method': 'upload', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey, 'codetype': str(codetype), 'timeout': str(timeout)}file = {'file': filename}response = self.request(data, file)if (response):if (response['ret'] and response['ret'] < 0):return response['ret']else:return response['cid']else:return -9001def result(self, cid):data = {'method': 'result', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey, 'cid': str(cid)}response = self.request(data)return response and response['text'] or ''def decode(self, filename, codetype, timeout):cid = self.upload(filename, codetype, timeout)if (cid > 0):for i in range(0, timeout):result = self.result(cid)if (result != ''):return cid, resultelse:time.sleep(1)return -3003, ''else:return cid, ''def report(self, cid):data = {'method': 'report', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey, 'cid': str(cid), 'flag': '0'}response = self.request(data)if (response):return response['ret']else:return -9001def post_url(self, url, fields, files=[]):for key in files:files[key] = open(files[key], 'rb');res = requests.post(url, files=files, data=fields)return res.text####################################################################### 用户名
username = 'username'# 密码
password = 'password' # 软件ID,开发者分成必要参数。登录开发者后台【我的软件】获得!
appid = 1 # 软件密钥,开发者分成必要参数。登录开发者后台【我的软件】获得!
appkey = '22cc5376925e9387a23cf797cb9ba745' # 图片文件
filename = 'getimage.jpg' # 验证码类型,# 例:1004表示4位字母数字,不同类型收费不同。请准确填写,否则影响识别率。在此查询所有类型 http://www.yundama.com/price.html
codetype = 1004# 超时时间,秒
timeout = 60 # 检查
if (username == 'username'):print('请设置好相关参数再测试')
else:# 初始化yundama = YDMHttp(username, password, appid, appkey)# 登陆云打码uid = yundama.login();print('uid: %s' % uid)# 查询余额balance = yundama.balance();print('balance: %s' % balance)# 开始识别,图片路径,验证码类型ID,超时时间(秒),识别结果cid, result = yundama.decode(filename, codetype, timeout);print('cid: %s, result: %s' % (cid, result))######################################################################
云打码实现验证码识别相关推荐
- Reptile:requests + 云打码平台实现 识别图片验证码登陆
使用requests加上打码平台云打码,实现登陆有图片验证的网站,是图片验证码. 豆瓣的登陆验证方式换了,换成点击验证和图片滑动验证组合的了,所以实验对象不能使用豆瓣了 图片不能是JS写入的,必须得有 ...
- python 验证码识别 阿里云_python3调用阿里云图像识别OCR-实现验证码识别
python3 调用阿里云图像识别OCR-验证码识别 前言 使用别人的接口,是需要在别人的平台上创建应用的. 所以,我们要先去 购买地址:(放心,免费的.) https://market.aliyun ...
- python使用云打码破解验证码
python使用云打码破解验证码 十分想念顺店杂可... 运行环境: 系统: win10 Python版本: Python 3.6.6 登录云打码平台官网免费注册个账号 我用的用户注册 用户注册可以找 ...
- requests利用selenium,代理Ip,云打码,验证码抠图操作 爬取搜狗微信公众号内容
爬取思路,爬取搜狗微信公众号内容,爬取第一层url时请求太快出现验证码,我这里用的蘑菇云代理,并在程序中我判断什么情况下是否+代理,做到合理运用代理ip.爬取第二层url时验证码出现次数更严重(和第一 ...
- 打码平台php源码,正方验证码识别(非打码平台)(已解决运行出现4个#)
本人用的是网上的Java版本,经过本人的改良只剩下验证码识别. 有人运行出现了4个#,解决方法如下: 1.如果是单独运行imagepreprocess.java则把srcpath和trainpath改 ...
- 关于云打码平台的'PythonHttp'调用实例的使用
一: 云打码平台的PythonHTTP的下载过程 首先先注册一个云打码平台的账号,选择开发者选项登录 文件下载流程: 最后下载的文件是: 这里使用的云打码平台的YDMHTTPD3的版本, 对应的pyt ...
- 高级的验证码识别软件都能对图片验证码进行识别
在这个网络时代没有说对验证码不熟悉的人,因为在现在的网络生活中是必须有验证码出现的.其实验证码的出现只是为了维护一个良好的网络环境,让网民在上网的时候享受一个健康的网络氛围. 但是随着验证码出现的越来 ...
- 验证码识别---云打码
这边采用云打码平台api 接口识别验证码图片,注意验证码识别正确率不是100% ,在项目中使用需做好处理 # -*- coding: utf-8 -*- import json import time ...
- python爬虫验证码的处理(云打码)_用Python识别验证码
由于本文实现的功能是在内网环境完成,因此,没有代码介绍,也没有识别效果展示. 爬虫过程中难免会碰到验证码,各种各样的验证码似乎阻挡了爬虫的脚步. 为了识别机器和真实用户而诞生的爬虫 碰到验证码有两个方 ...
- 图片识别 就用uu云验证码识别平台
图片识别 就用uu云验证码识别平台 我相信很多朋友和我一样都有这样的困扰,经常要将图片或者扫描文件中的文字提取出来,保存在我们的文档中去.但是用了很多软件,效果都不是很理想,还是需要自己人工去核对,大 ...
最新文章
- 手机主题随手机壳改变_无线充电可以与手机壳一起使用吗?
- oracle如何查找谁删除了数据_一文看懂Oracle是如何闪回数据库的?
- c语言实现按键的抖动与消除,7.3 按键消抖
- 传奇服务端GOM引擎和GEE引擎区别在哪里?
- netbeans php下载,Netbeans7下载和安装
- android仿多看阅读三屏滚动效果 -- 更改OnPageChangeListener
- SQLSERVER2008 18456错误
- [Linq] Linq如何调用外部方法?
- 范宝兴:幻方与类自然数幻方(上)「片桐善直8阶间隔幻方」「同心6阶/8阶/10阶」...
- 解密:Gmail移动客户端自动邮件回复技术
- Android 实时监听耳机拔除
- 法兰盘零件机械加工工艺规程编制及加工右大斜面用铣床专用夹具设计
- 能解开assetbundle格式资源的UnityStudio工具
- css设置透明的border
- Linux--RH124---unit 1 基础使用
- 学习kali linux的几个不错的网站
- 诗可以怨 --钱钟书
- jsp-自定义标签Tag
- python-ppt
- 设计模式1-工厂模式
热门文章
- 未来的学习目标-C/C++/Linux服务器开发高级架构
- 程序计数器(PC ) 详解
- Tegra3 1080p高清播放时电源管理方式和功耗分析
- R语言—基本统计分析
- select python interpreter什么意思_熟悉Python Interpreter解释器
- 课堂派“互动课件”文件下载
- 数据中台在企业数字化转型中的践行(上篇)
- Bootstrap实战(第一弹:栅格实现5等分或8等分)
- Unity3D 实现阴阳师 画符
- java代码条形码链接网址_集成自动化的条形码功能到internet应用程序,网站或自定义Java应用程序的条码控件Java Barcode Package...