python实现简单的文字识别

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 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例

本文实例讲述了Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作。分享给大家供大家参考,具体如下: 实例对象也可以实现闭包的功能,不过实例对象消耗的资源(内存)比闭包...

详解Python中的循环语句的用法

一、简介       Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性。须重要理解,if、while、for以及与它...

python中的set实现不重复的排序原理

python中的set实现不重复的排序原理

最近在尝试写选课系统的时候遇到一个问题:   1、存在两个类 School、Teacher ;   2、School实例中包含多个Teacher的实例,但又不可重复   本人想到在Sch...

pandas带有重复索引操作方法

有的时候,可能会遇到表格中出现重复的索引,在操作重复索引的时候可能要注意一些问题。 一、判断索引是否重复 a、Series索引重复判断 s = Series([1,2,3,4,5],...

Python探索之创建二叉树

问题 创建一个二叉树 二叉树有限多个节点的集合,这个集合可能是: 空集 由一个根节点,和两棵互不相交的,分别称作左子树和右子树的二叉树组成 创建二叉树,创建节点,再创建节点之间...