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

python如何调用百度识图api

程序员文章站 2022-03-27 14:06:03
一.先去百度识别官网注册开通服务且获得ak和sk链接:https://cloud.baidu.com/doc/reference/s/9jwvz2egb二.代码模板import cv2import b...

一.先去百度识别官网注册开通服务且获得ak和sk

链接:https://cloud.baidu.com/doc/reference/s/9jwvz2egb

二.代码模板

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

以上就是python如何调用百度识图api的详细内容,更多关于python调用api的资料请关注其它相关文章!