python如何实现调用百度识图api?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
代码模板
import cv2
import base64
import requests
import numpy as np
import traceback
from retrying import retry
token_list=[
{
"ak":"xxxxxx",
"sk":"xxxxxxxxxx"
},
]
def get_token(ak,sk):
url = "https://aip.baidubce.com/oauth/2.0/token"
params = {
"grant_type": "client_credentials",
"client_id": ak, # AK
"client_secret": sk # SK
}
eaders={
"Content-Type":"application/json; charset=UTF-8",
}
response = requests.get(url,params=params,headers=headers,timeout=8)
res = response.json()
access_token = res["access_token"]
return access_token
def baidu_api(image,token):
"""
百度通用文字识别
:return:
"""
# 通用文本识别接口
url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic"
# 网络图片识别接口
# url = "https://aip.baidubce.com/rest/2.0/ocr/v1/webimage"
params = {
"access_token": token,
}
data = {
"image": base64.b64encode(image) #图标的bs64编码
}
response = requests.post(url, params=params, data=data)
data_res = response.json()
print(data_res)
words = [i["words"] for i in data_res["words_result"]]
return words
def baidu_image_recognition(img_content):
img2=img_content
for i in range(len(token_list)):
token = get_token(token_list[i]["ak"], token_list[i]["sk"])
words = baidu_api(img2,token)
return words
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注天达云行业资讯频道,感谢您对天达云的支持。