python实现简单的文字识别

yipeiwu_com5年前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实现在函数中修改变量值的方法

和其他语言不一样,传递参数的时候,python不允许程序员选择采用传值还是传引用。Python参数传递采用的肯定是“传对象引用”的方式。 实际上,这种方式相当于传值和传引用的一种综合。如...

在Django的通用视图中处理Context的方法

制作友好的模板Context 你也许已经注意到范例中的出版商列表模板在变量 object_list 里保存所有的书籍。这个方法工作的很好,只是对编写模板的人不太友好。 他们必须知道这里正...

Python制作简易注册登录系统

Python制作简易注册登录系统

这次我主要讲解如何用Python基于Flask的登录和注册,验证方式采用Basic Auth 主要用以下库 import os #Flask的基础库 from flask imp...

使用python读取txt文件的内容,并删除重复的行数方法

注意,本文代码是使用在txt文档上,同时txt文档中的内容每一行代表的是图片的名字。 #coding:utf-8 import shutil readDir = "原文件绝对路经...

Python内置函数 next的具体使用方法

Python 3中的File对象不支持next()方法。 Python 3有一个内置函数next(),它通过调用其next ()方法从迭代器中检索下一个项目。 如果给定了默认值,则在迭代...