百度通用文字识别——识别验证码
程序员文章站
2024-03-07 18:04:09
...
百度ai提供了识别通用文字的API接口,可以利用该接口识别登陆网站时需要进行识别的验证码。
一、注册账号
登陆百度ai,打开控制台打开,并选择文字识别。
接口每天有5万次免费调用的权限,个人开发测试是足够的。
添加测试应用
创建完成之后可以看到appID和密码。
二、测试接口
1、获取Access Token
# encoding:utf-8
import requests
# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
response = requests.get(host)
if response:
print(response.json())
返回结果包含:
eg.{
“refresh_token”:“25.b55fe1d287227ca97aab219bb249b8ab.315360000.1798284651.282335-8574074”,
“expires_in”: 2592000,
“scope”: “public wise_adapt”,
“session_key”:“9mzdDZXu3dENdFZQurfg0Vz8slgSgvvOAUebNFzyzcpQ5EnbxbF+hfG9DQkpUVQdh4p6HbQcAiz5RmuBAja1JJGgIdJI”,
“access_token”:“24.6c5e1ff107f0e8bcef8c46d3424a0e78.2592000.1485516651.282335-8574074”,
“session_secret”: “dfac94a3489fe9fca7c3221cbf7525ff”
}
2、识别图片中的内容
request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic" #通用识别API
f = open('图片位置', 'rb')# 二进制方式打开图片文件
img = base64.b64encode(f.read())# 加密
params = {"image":img}
access_token = '24.6c5e1ff107f0e8bcef8c46d3424a0e78.2592000.1485516651.282335-8574074'#用上一步获取的access_token
request_url = request_url + "?access_token=" + access_token#网址
headers = {'content-type': 'application/x-www-form-urlencoded'}#头部
response = requests.post(request_url, data=params, headers=headers)
if response:
print (response.json())
返回一个字典结果,其中包含:
eg.{
‘log_id’: 713#########9193, 用户ID
‘words_result_num’: 1, ‘识别图片数量
words_result’: [{‘words’: ‘KDQ心U’}]识别结果
}