Python小应用 百度接口实现图片文字识别,并打包成安装包软件

CuterCorley 等级 1025 1 0

本文给大家分享的主题是用百度的接口实现图片的文字识别。

1.环境和配置要求

整体是用Python实现,所需要使用的第三方库包括aipPILkeyboardpyinstaller,如未安装,可在CMD中使用pip install Baidu-AIP/pillow/keyboard/pyinstaller指令安装。

百度接口

打开https://cloud.baidu.com/,如未注册请先注册,然后登录点击管理控制台,点击左侧产品服务人工智能文字识别,点击创建应用,输入应用名称如Baidu_OCR,选择用途如学习办公,最后进行简单应用描述,即可点击立即创建。会出现应用列表,包括AppID、API Key、Secret Key等信息,这些稍后会用到。 Python小应用 百度接口实现图片文字识别,并打包成安装包软件 Python小应用 百度接口实现图片文字识别,并打包成安装包软件

2.具体实现步骤

整个程序的大致思路是,在用截图软件获得截图之后,交给百度接口识别,并返回结果,当然,也可以是本地图片识别,我用的是QQ自带截图软件,快捷键CTRL+ALT+A用来打开截图,在选中所截区域后,按Enter键即可保存到粘贴板中,也可用其他截图软件。

①获取截图

keyboard类库是用来监听键盘动作的,所以在有快捷键按下之后,便会有相应动作。并用PIL中的ImageGrab来获取到剪切板中的图片并生成本地图片文件。

#1.截图
keyboard.wait('ctrl+alt+a')
print('开始截图')

keyboard.wait('enter')
print('保存截图')
time.sleep(0.1)

#2.保存图片
image = ImageGrab.grabclipboard()
image.save('img.png')

②调用Baidu aip识别并打印文字

先用注册时生成的应用的AppID、API Key、Secret Key初始化应用,再读取保存到的图片并打印识别的文字。

with open('img.png', 'rb') as fp:
    image = fp.read()
    text_list = client.basicAccurate(image)['words_result']
    for text in text_list:
        print(text['words'])

运行结果如图所示: Python小应用 百度接口实现图片文字识别,并打包成安装包软件 我们还可增加一个无限循环使得一直能截图。

③调用打包程序生成专属识别文字小程序

用pyinstaller库实现小程序的打包,生成.exe文件,这样就能随时识别文字了。 在命令行中用pyinstaller xxx.py来打包生成exe文件,最后在生成的dist文件夹即可找到xxx.exe文件如下:Python小应用 百度接口实现图片文字识别,并打包成安装包软件 最后附上整个源代码:

#引入截图软件,获取文件到本地端,并识别图片文字,最后打包
import keyboard #控制键盘
from PIL import ImageGrab #保存图片
import time
from aip import AipOcr

""" 你的 APPID AK SK """
APP_ID = '17076767'
API_KEY = 'Af3Rj5HALMz5AN8prSgwTH4m'
SECRET_KEY = '******************'

client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
i = 0

while True:
    #1.截图
    keyboard.wait('ctrl+alt+a')
    print('开始截图')

    keyboard.wait('enter')
    print('保存截图')
    time.sleep(0.1)

    #2.保存图片
    image = ImageGrab.grabclipboard()
    image.save('img{}.png'.format(i))


    """ 调用通用文字识别(高精度版) """

    with open('img{}.png'.format(i), 'rb') as fp:
        image = fp.read()
        text_list = client.basicAccurate(image)['words_result']
        for text in text_list:
            print(text['words'])

    i+=1

本文原文首发来自博客专栏https://blog.csdn.net/cufeecr/category_9497377.html,由本人转发至https://www.helloworld.net/p/D8MU3LcLMCVO,其他平台均属侵权,可点击https://blog.csdn.net/CUFEECR/article/details/101173141查看原文,也可点击https://blog.csdn.net/CUFEECR浏览更多优质原创内容。

收藏
评论区

相关推荐

Python的环境搭建和下载
Python是一个跨平台、可移植的编程语言,因此可在windows、Linux和Mac OS X系统中安装使用。 安装完成后,你会得到Python解释器环境,可以通过终端输入python命令查看本地是否已经按照python以及python版本。这里有一点需要注意的是,如果没有将python的安装目录添加到环境变量中,会报错(python不是内部命令或外部命
15. Python 程序运行速度如何提高十倍?第一遍滚雪球学 Python 收工
本篇文章将给大家介绍 Python 多线程与多进程相关知识,学习完该知识点之后,你的 Python 程序将进入另一个高峰。 <center<font colorred缓解一下视疲劳</font</center 15. Python 程序运行速度如何提高十倍?第一遍滚雪球学 Python 收工(https://imghelloworld.oss
原来Python绘图也可以这么漂亮,这次真的是学习到了!
(https://imghelloworld.osscnbeijing.aliyuncs.com/8830803f033eeed85783e9058cf08968.png) 作者:朱小五 来源:快学Python 👆人生苦短,快学Python! 最近看了一篇文章《一个牛逼的Python 可视化库:PyG2Plot》,可惜只是简单介
简单盘点12个Python数据可视化库,通吃任何领域
(https://imghelloworld.osscnbeijing.aliyuncs.com/a7ecca0969cf04ff24e7c734e3cb73df.png) 大家好,我是小五🐶 在数据可视化的研究热潮中,如何让数据生动呈现,成了一个具有挑战性的任务,随之也出现了大量的可视化软件。相对于其他商业可视化软件,Python
被“词云”包围的冰冰会更好看吗?安排
(https://imghelloworld.osscnbeijing.aliyuncs.com/b299933deefc692934e8cc6141ab3894.png) 大家好,我是小五🐶 昨天「凹凸数据」发了一篇张同学投稿的文章《用Python爬取王冰冰vlog弹幕并制作词云(https://mp.weixin.qq.com/
我的python总结
建议刚开始学习直接使用ANACONDAhttps://www.anaconda.com/download/配置python环境变量https://docs.python.org/3.6/using/cmdline.htmlenvvarPYTHONMALLOCPython PEP8导包顺序1. Python标准
多人说Python简单,但是如何入门Python并精通?
一般而言,Python几个月就可以开始使用了。假如你几个月没入门,那肯定是方法不对,或者是偷懒.我在公众号里有一篇文章详细写了“初学者别上爬虫”,爬虫虽然很有趣,但不适合于小白用户。以下是2点:多人说Python简单,但是如何入门Python并精通?Python再简单再通俗,它也是一门语言,掌握一门语言绝非一朝一夕,我个人不推荐初学者上岸学习爬虫,我举一个很
小白想学python,怎么做?
小白需要怎么学习python,python学习的难度大吗?学python需要从哪学起?学Python难?首先,我们普及一下编程语言的基础知识。编程语言的作用是为了让计算机干活,比如下载视频,音乐编辑文档等,而计算机干活的CPU只认识机器指令,所以,尽管编程语言不同,最后都要翻译成CPU能听懂的语言。而不同的编程语言,干同一个活,编写的代码量,差距也很大。Py
小白学习python该往哪方面走小白必看
整理了Python的7大就业方向,希望大家能找到适合自己的,然后学习下去,完成人生的目标。1、Web开发(Python后端)Python有很多优秀的Web开发框架,如Flask、Django、Bootstar等,可以帮助你快速搭建一个网站。当需要一个新功能时,用Python只需添加几行代码即可,这受到了很多初创型公司的一致欢迎。像知乎、豆瓣、小米这样的大厂,
小白学Python不知道从哪里入手?我教你python详细路线图
在这个信息爆炸的时代,以 “Python入门” 为关键字搜索出的结果成千上万。不少小白选手难免会东一榔头西一棒槌。这是一篇 Python 入门指南,针对那些没有任何编程经验,从零开始学习 Python 的同学。不管你学习的出发点是兴趣驱动、拓展思维,还是工作需要、想要转行,都可以此文作为一个参考。 非诚勿扰:正在学习python的小伙伴或者打算学习的,可以加
python的这些必备干货知识点,快来看看有没有你不了解的?
Python是当前主流的编程语言之一,其优点有:一:语法简洁,可以让使用者用少量的代码完成相对复杂的效果。二:标准库和第三库多,功能强大;三:站在了人工智能和大数据的风口上;像国内的豆瓣呀,知乎呀等等知名网站都是基于python开发的,而Youtube、Reddit、Dropbpx也是用python的框架开发的。近几年学习python的小伙伴越来越多,那么p
干货|利用Python自动根据数据生成降雨量统计分析报告
作者:小小明 简介:Pandas数据处理专家,10余年编码经验,至今已帮助过成千上万名数据从业者解决工作实际遇到的问题,其中数据处理和办公自动化问题涉及的行业包括会计、HR、气象、金融等等,现为菜J学Python核心技术团队成员之一。 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤今夜偏
我用Python批量读取考生成绩单,并自动发送录取通知书邮件
01前言 大家好,我是J哥。 高考刚结束不久,很多小伙伴肯定都期待有个好成绩,能够进入理想的大学。而一旦成绩出来,大学招生办老师将面临给广大学子发送录取通知书的巨大工作压力,本文将利用Python技术,手把手教你用Python批量读取考生成绩,邮件合并且自动发送邮件,赶紧学起来吧 需求如下: 02准备工作 首先,我们将图中三个文件置
初窥 Python 的 import 机制
本文适合有 Python 基础的小伙伴进阶学习。 作者:pwwang一、前言本文基于开源项目: https://github.com/pwwang/pythonimportsystem补充扩展讲解,希望能够让读者一文搞懂 Python 的 import 机制。 1.1 什么是 import 机制?通常来讲,在一段 Python 代码中去执行引用另一个模块中
手把手教你使用Python网络爬虫获取B站视频选集内容(附源码)
大家好,我是Python进阶者。 前言前几天雪球兄在Python交流群里分享了一个获取B站视频选集的Python代码,小编觉得非常奈斯,这里整理成一篇小文章,分享给大家学习。关于雪球兄,大家应该都熟悉了,之前他写过Python实战文章,好评如潮,没来得及看的小伙伴,可以戳这里了:之前也有给大家分享B站的一些文章,感兴趣的话可以看看这个文章,Python网络爬