python调用百度AI提取图片文字

  • 2020 年 1 月 13 日
  • 筆記

python本身也有识别图片转文字的框架,但是相比调用接口,识别的精度就略显不行了;

这是 百度AI 的网站: https://ai.baidu.com/ ;

点击右上角的 控制台 ,申请或者登陆;

进去之后左侧有 【文字识别】:

点击【创建应用】,创建接口;

之后会得到创建的三个连接密钥: AppID

API Key

Secret Key

这三个参数会在后面调用的时候会用到;

同样,在页面也可以找到文字识别的技术文档:  https://ai.baidu.com/docs#/OCR-API/top

里面有调用的例子,基本复制、粘贴,直接调用就能用;

所使用的python包也只需安装 baidu-aip 即可;

我是用 pycharm工具开发的,所以在设置中直接查找安装了  baidu-aip ,

如果是windows、linux 用pip安装: pip install baidu-aip 

直接上代码:

# -*- coding: UTF-8 -*-  from aip import AipOcr  # 定义常量  APP_ID = 'XXXXXXXXX'  API_KEY = 'XXXXXXXXXXXXXXXXXX'  SECRET_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXXXXX'    client = AipOcr(APP_ID, API_KEY, SECRET_KEY)    """ 读取图片 的方法"""  def get_file_content(filePath):      with open(filePath, 'rb') as fp:          return fp.read()    #定义图片的绝对路径  image = get_file_content('D:/共享文件夹/图片/123.png')    """ 调用通用文字识别(高精度版) """  restu1 = client.basicAccurate(image);    lists = restu1['words_result']      #列表  for listss in lists:      print(listss['words'])

百度AI 上的文档也是这个代码,不会对于新手来说还是不会用(不知道怎么“调用”);代码里的注释很清楚了,有点python基础的都可以看懂;

APP_ID = 'XXXXXXXXX' API_KEY = 'XXXXXXXXXXXXXXXXXX' SECRET_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXXXXX'

这三个参数里填写的就是文章开始你申请的百度AI;

其实最后可以直接    print(restu1)   

但是输出的是  字典、列表,在此我将结果遍历了一下,从图片中识别的文字会一行一行显示,剩下的操作看你咋搞了,存入数据也行,生成表格也行;