环境
我用的环境是python3.9+pycharm2020.3。
识别工具是第三方工具“图鉴”,地址为:http://www.ttshitu.com/
验证码类型:
图鉴接口文档:
HTTP接口(同时支持HTTPS)
注意:所有HTTP接口提交方式均为POST提交(注:特殊说明除外)。
快速入门
1、会员注册及登录
注册账户:http://www.ttshitu.com/register.html
记录"账号"、“密码”,用于接口接入时使用
2、接口接入
参考下面的各个接口说明,选择一个最合适您的使用即可;
如果您在接入过程中有困难或疑问,欢迎咨询客服QQ 458847793,辅助您完成接入。
统一识别接口
接口地址:
请求参数:
请求示例:
返回示例:
成功返回:
/*普通文字识别返回*/
{
"success": true,
"code": "0",
"message": "success",
"data": {
"result": "hhum",
"id": "00504808e68a41ad83ab5c1e6367ae6b"
}
}
/*坐标点选识别返回*/
{
"success": true,
"code": "0",
"message": "success",
"data": {
"result": "141,61|200,22",
"id": "00504808e68a41ad83ab5c1e6367ae6b"
}
}
失败返回
{
"success": false,
"code": "-1",
"message": "用户名或密码错误",
"data": ""
}
报错接口
注意:为了保障接口使用的流畅性,报错结果在5min后批量更新,并返还次数或金额。
请求示例:
http://api.ttshitu.com/reportError?id=成功返回的id
返回示例:
成功返回
{
"success": true,
"code": "0",
"message": "success",
"data": {
"result": "报错成功"
}
}
失败返回
{
"success": false,
"code": "-1",
"message": "不存在的报错ID,或已经超过允许报错的时间范围",
"data": ""
}
余额查询接口
请求提示:
http://api.ttshitu.com/queryAccountInfo.json?username=*&password=
返回示例:
成功返回
{
"success": true,
"code": "0",
"message": "success",
"data": {
"balance": "0.156",//注:实时余额
"consumed": "0.844",//注:实时总消费
"successNum": "557",//注:实时总识别成功的次数
"failNum": "0"//注:实时总识别错误数
}
}
失败返回
{
"success": false,
"code": "-1",
"message": "[dsd12], 用户被禁用!",
"data": ""
}
python调用示例
脚本
import base64
import json
import requests
# 一、图片文字类型(默认 3 数英混合):
# 1 : 纯数字
# 1001:纯数字2
# 2 : 纯英文
# 1002:纯英文2
# 3 : 数英混合
# 1003:数英混合2
# 4 : 闪动GIF
# 7 : 无感学习(独家)
# 11 : 计算题
# 1005: 快速计算题
# 16 : 汉字
# 32 : 通用文字识别(证件、单据)
# 66: 问答题
# 49 :recaptcha图片识别 参考 https://shimo.im/docs/RPGcTpxdVgkkdQdY
# 二、图片旋转角度类型:
# 29 : 旋转类型
#
# 三、图片坐标点选类型:
# 19 : 1个坐标
# 20 : 3个坐标
# 21 : 3 ~ 5个坐标
# 22 : 5 ~ 8个坐标
# 27 : 1 ~ 4个坐标
# 48 : 轨迹类型
#
# 四、缺口识别
# 18:缺口识别
# 五、拼图识别
# 53:拼图识别
def base64_api(uname, pwd, img, typeid):
with open(img, 'rb') as f:
base64_data = base64.b64encode(f.read())
b64 = base64_data.decode()
data = {"username": uname, "password": pwd, "typeid": typeid, "image": b64}
result = json.loads(requests.post("http://api.ttshitu.com/predict", json=data).text)
if result['success']:
return result["data"]["result"]
else:
return result["message"]
return ""
if __name__ == "__main__":
img_path = "C:/Users/Administrator/Desktop/file.jpg"
result = base64_api(uname='你的账号', pwd='你的密码', img=img_path, typeid=3)
print(result)
报错脚本
import json
import requests
def reportError(id):
data = {"id": id}
result = json.loads(requests.post("http://api.ttshitu.com/reporterror.json", json=data).text)
if result['success']:
return "报错成功"
else:
return result["message"]
return ""
if __name__ == "__main__":
result = reportError(id='成功返回的id')
print(result)