百度AI识别验证码
这次我们要使用百度AI来识别验证码,在一定额度内是不需要钱的
创建应用
https://console.bce.baidu.com/ai/?_=1646966441317&fromai=1#/ai/ocr/app/list
文字识别默认是选上的
SDK
https://cloud.baidu.com/doc/OCR/s/9kibizye4
安装
pip install baidu-aip
使用
from aip import AipOcr
""" 你的 APPID AK SK """
APP_ID = 'xxxxx'
API_KEY = 'xxxxx'
SECRET_KEY = 'xxxxx'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
def get_file_content(file_path):
with open(file_path, 'rb') as fp:
return fp.read()
image = get_file_content('./yzm.png')
""" 调用通用文字识别, 图片参数为本地图片 """
result = client.basicAccurate(image)
print(result)
查看效果
验证码图片
返回结果
{
'words_result': [
{
'words': '2238'
}
],
'words_result_num': 1,
'log_id': 1502118851305450945
}
Tips
-
可以先用openCV对验证码进行一些处理,再进行识别 -
可以用FastAPI做成接口的形式来调用,图片可以转成base64来发送
import base64
image_data = base64.urlsafe_b64decode(image_base64)
注意这里的base64是不带前缀的
|