python实现百度OCR图片识别过程解析

yipeiwu_com7年前Python基础

这篇文章主要介绍了python实现百度OCR图片识别过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码如下

import base64
import requests

class CodeDemo:
  def __init__(self,AK,SK,code_url,img_path):
    self.AK=AK
    self.SK=SK
    self.code_url=code_url
    self.img_path=img_path
    self.access_token=self.get_access_token()

  def get_access_token(self):
    token_host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id={ak}&client_secret={sk}'.format(ak=self.AK,sk=self.SK)
    header={'Content-Type': 'application/json; charset=UTF-8'}
    response=requests.post(url=token_host,headers=header)
    content = response.json()
    access_token=content.get("access_token")
    return access_token

  def getCode(self):
    header = {
      "Content-Type": "application/x-www-form-urlencoded"
    }
    def read_img():
      with open(self.img_path, "rb")as f:
        return base64.b64encode(f.read()).decode()

    image = read_img()
    response=requests.post(url=self.code_url,data={"image":image,"access_token":self.access_token},headers=header)
    return response.json()

if __name__ == '__main__':
  AK = "" # 官网获取的AK
  SK = "" # 官网获取的SK
  code_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate" # 百度图片识别接口地址
  img_path=r"" # 识别图片的地址

  code_obj=CodeDemo(AK=AK,SK=SK,code_url=code_url,img_path=img_path)
  res=code_obj.getCode()
  code=res.get("words_result")[0].get("words")
  print(res)
  print(code)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python2.7环境Flask框架安装简明教程【已测试】

Python2.7环境Flask框架安装简明教程【已测试】

本文详细讲述了Python2.7环境Flask框架安装方法。分享给大家供大家参考,具体如下: 第1步:确保本机已经安装有python,下载easy_install到本地某一目录,双击ez...

Java及python正则表达式详解

Java及python正则表达式详解

正则表达式语法及常用元字符: 正则表达式有元字符及不同组合来构成,通过巧妙的构造正则表达式可以匹配任意字符串,并完成复杂的字符串处理任务。 常用的元字符有: 其中在使用反斜线时要注意:如...

Python初学者常见错误详解

前言 Python 以其简单易懂的语法格式与其它语言形成鲜明对比,初学者遇到最多的问题就是不按照 Python 的规则来写,即便是有编程经验的程序员,也容易按照固有的思维和语法格式来写...

用pycharm开发django项目示例代码

用pycharm开发django项目示例代码

在pycharm(企业版)中新建Django工程,注意使用虚拟环境 创建成功后,在pycharm显示的工程目录结构如下: 打开pycharm的Terminal,进入该工程的目录新建...

浅谈python写入大量文件的问题

今天准备把几个txt文件合并成一个文件时,用f.write方法写入时,发现程序执行完了,本应该十万行左右的txt记录,实际上只被写入了4k多行。 网上查了是因为程序执行速度太快,以至于读...