欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用python调用腾讯AI开放平台手写体OCR的API

程序员文章站 2023-12-22 15:50:16
...

使用python调用腾讯AI开放平台手写体OCR的API

我有一个识别简单验证码的需求, 要求免费. 所以找到了腾讯AI开放平台手写体OCR, 我选择实现方式是先把验证码图片保存本地, 然后把图片的base64编码数据作为参数发送.

在网上看了看python实现签名算法, 结果在我这里实现不了, 所以借鉴别人的方法自己改了改, 希望对你有用

下面是参数要求

请求参数
使用python调用腾讯AI开放平台手写体OCR的API
响应参数
使用python调用腾讯AI开放平台手写体OCR的API
接口
使用python调用腾讯AI开放平台手写体OCR的API

代码

import hashlib
import random
import string
import time
from urllib.parse import quote, urlencode
import requests
import base64


# 本地图片路径
file = "1.jpg"
with open(file, 'rb') as f:
    image = base64.b64encode(f.read())
# 时间戳   
time_stamp = int(time.time())
# 获得随机字符串
nonce_str = ''.join(random.sample(string.ascii_letters + string.digits, 10))
# 你应用的APPID和APPKEY
APP_KEY = "XXXXXX"
app_id = "111111"
# 所有参数(sign除外)
params = {
    'app_id': app_id,
    'time_stamp': time_stamp,
    'nonce_str': nonce_str,
    'image': image,
}
# 处理参数
before_sign = ''
params_new = {}
for key in sorted(params):
	params_new[key] = params[key]
before_sign += urlencode(params_new)
before_sign += f"&app_key={APP_KEY}"
# 对获得的before_sign进行MD5加密
sign = hashlib.md5(before_sign.encode("utf-8")).hexdigest().upper()
# 将请求签名添加进参数字典
params["sign"] = sign
url = "https://api.ai.qq.com/fcgi-bin/ocr/ocr_handwritingocr"
req = requests.post(url, data=params)
print(req.text)
相关标签: python ocr 腾讯

上一篇:

下一篇: