python调用若快打码接口

本文介绍了一种利用Ruokuai平台进行验证码识别的方法。通过Python代码示例,展示了如何上传图片并获取识别结果,包括从本地文件读取图片和直接从URL下载图片两种方式。文章还提及了软件ID和Key的获取流程,以及官方提供的不同类型验证码识别服务。
# encoding=utf8
 
import requests
import time
 
def get_verify_code(im, typeid):
	verify_code = '****'
	url = 'http://api.ruokuai.com/create.json'
	params = {
		'typeid': typeid,
		'timeout': 60,
		'username': '',		# 用户名
		'password': '',		# 密码
		'softid': '',		# 软件Id
		'softkey': ''		# 软件Key
	}
	files = {
		'image': ('a.jpg', im)
	}
	headers = {
		'Connection': 'Keep-Alive',
		'Expect': '100-continue',
		'User-Agent': 'ben'
	}
	try:
		resp = requests.post(url, data=params, files=files, headers=headers)
	except Exception as e:
		print 'get_verify_code error: ', e
		return verify_code
	try:
		verify_code = resp.json().get('Result', '')
	except Exception as e:
		print 'get_verify_code failed: ', e
		return verify_code
	if not verify_code:
		try:
			print resp.text
		except:
			print 'verify code resp is None'
 
	return verify_code
 
def main():
	path = ''	# 图片路径
	with open(path, 'rb') as f:
		content = f.read()
	vcode = get_verify_code(content, 3040)
	print '--- vcode: ', vcode
 
if __name__ == '__main__':
	main()

说明:

软件Id和软件Key两个参数需要用户通过“开发者登录”后,在“软件管理”中添加一个软件,之后就可以得到一组softid和softkey,不过官方会有审核时间:

 

另外,上面代码中get_verify_code的第一个参数im既可以是以二进制保存的图片,也可以是通过http请求得到的图片的二进制源码,像这样: 

def main():
	url = ''	# 请求图片的链接
	resp = requests.get(url)
	content = resp.content
	vcode = get_verify_code(content, 3040)
	print '--- vcode: ', vcode
 
if __name__ == '__main__':
	main()

 

 

最后,代码中的3040是官方“编码Typeid”中的一种,具体可以参考这里:价格类型

 

转载链接 :

      https://blog.youkuaiyun.com/u012067766/article/details/80081125

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值