Python基于百度云文字识别API

yipeiwu_com6年前Python基础

本文实例为大家分享了Python实现最简单的文字识别的具体代码,供大家参考,具体内容如下

Python版本:3.6.5

百度云提供的文字识别技术,准确率还是非常高的,而且每天还有5w次免费的调用量,对于用来学习或者偶尔拿来用用,已经完全足够了。文章提供一个模板,稍加修改就可以直接套用。注释中提到必须输入的地方,你都正确地输入了的话,就可以完成一次简单的文字识别了。

# -*- coding: utf-8 -*-
 
import requests
import base64
 
class Orc_main():
  def orc_look(self, path):
    access_token = "" # 自行注册百度云账号,即可获取自己专属的access_token,必须输入!
    with open(path, 'rb') as f:
      image_data = f.read()
      base64_ima = base64.b64encode(image_data)
      data = {
        'image': base64_ima
      }
      headers = {
        'Content-Type': 'application/x-www-form-urlencoded'
      }
      url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token=" + str(access_token)
      r = requests.post(url, params=headers, data=data).json()
      for word in r['words_result']:
        yield word['words']
      # 返回一个生成器,可自行修改
 
if __name__ == '__main__':
  om = Orc_main()
  path = "" # 图片文件路径,必须输入!
  words = om.orc_look(path) 
  # 输出文字(返回结果)
  for word in words:
    print(word)

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

相关文章

python中map()与zip()操作方法

对于map()它的原型是:map(function,sequence),就是对序列sequence中每个元素都执行函数function操作。 比如之前的a,b,c = map(int,r...

Python+Selenium自动化实现分页(pagination)处理

场景 对分页来说,我们最感兴趣的是下面几个信息 总共有多少页 当前是第几页 是否可以上一页和下一页 代码 下面代码演示如何获取分页总数及当前页数、跳转到指定页数 #coding:u...

Python中函数的多种格式和使用实例及小技巧

这里先解释一下几个概念 - 位置参数:按位置设置的参数,隐式用元组保存对应形参.平时我们用的大多数是按位置传参.比如有函数def func(a,b,c),调用func(1,2,3).即...

Python实现Selenium自动化Page模式

Python实现Selenium自动化Page模式

Selenium是当前主流的web自动化工具,提供了多种浏览器的支持(Chrome,Firefox, IE等等),当然大家也可以用自己喜欢的语言(Java,C#,Python等)来写用例...

Windows下使Python2.x版本的解释器与3.x共存的方法

Python2 和 Python3 是不兼容的,如果碰到无法升级到 Python2 代码,或者同事中有坚守 Python2 阵营的情况,就要考虑 Python2 和 Python3 在系...