Python文字截图识别OCR工具实例解析


Posted in Python onMarch 05, 2020

一、简介

你一定用过那种“OCR神器”,可以把图片中的文字提取出来,极大的提高工作效率。

今天,我们就来做一款实时截图识别的小工具。顾名思义,运行程序时,可以实时把你截出来的图片中的文字识别出来。

二、模块

import keyboard # 用于监控键盘按下,触发事件(pip install keyboard)
import time
from aip import AipOcr # 调用百度接口(pip install baidu-aip)
from PIL import ImageGrab # 用于保存屏幕截图

三、获取百度应用接口

AI开放平台文档中心

https://ai.baidu.com/ai-doc

Python文字截图识别OCR工具实例解析

查看python语言的SDK文档

Python文字截图识别OCR工具实例解析

点击右上角(控制台),登录自己的百度账号,创建“文字识别”的应用

Python文字截图识别OCR工具实例解析

Python文字截图识别OCR工具实例解析

四、代码实现

#! /usr/bin/env python3
# -*- coding:utf-8 -*-

# Author : MaYi
# Blog  : http://www.cnblogs.com/mayi0312/
# Date  : 2020-03-02
# Name  : test_ocr
# Software : PyCharm
# Note  : 用Python开发截图识别OCR小工具
import keyboard # 用于监控键盘按下,触发事件(pip install keyboard)
import time
from aip import AipOcr # 调用百度接口(pip install baidu-aip)
from PIL import ImageGrab # 用于保存屏幕截图


# 百度识别接口配置信息
APP_ID = '你的App ID'
API_KEY = '你的API Key'
SECRET_KEY = '你的Secret Key'

while True:
 # 1、利用QQ截图到剪贴板
 # 输入键盘的触发事件
 keyboard.wait(hotkey="ctrl+alt+a")
 keyboard.wait(hotkey="enter")
 time.sleep(0.1)

 # 2、保存截图
 image = ImageGrab.grabclipboard()
 image.save("screen.png")

 # 3、利用百度API识别截图中的文字
 client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
 with open("screen.png", 'rb') as f:
  image = f.read()
  # 调用百度API通用文字识别(高精度版),提取图片中的内容
  text = client.basicAccurate(image)
  result = text["words_result"]
  for i in result:
   print(i["words"])
 # 我是分隔线
 print("-" * 50)

运行结果预览:

Python文字截图识别OCR工具实例解析

五、总结

1)等待用户截图

2)保存截图到当前目录

3)识别截图中的文本

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Tornado服务器中绑定域名、虚拟主机的方法
Aug 22 Python
粗略分析Python中的内存泄漏
Apr 23 Python
基于python中的TCP及UDP(详解)
Nov 06 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
Dec 02 Python
Python实现爬取马云的微博功能示例
Feb 16 Python
Tensorflow 多线程设置方式
Feb 06 Python
在python中利用pycharm自定义代码块教程(三步搞定)
Apr 15 Python
python mysql自增字段AUTO_INCREMENT值的修改方式
May 18 Python
基于matplotlib中ion()和ioff()的使用详解
Jun 16 Python
python中tkinter窗口位置\坐标\大小等实现示例
Jul 09 Python
python产生模拟数据faker库的使用详解
Nov 04 Python
python之PySide2安装使用及QT Designer UI设计案例教程
Jul 26 Python
win10下opencv-python特定版本手动安装与pip自动安装教程
Mar 05 #Python
python+OpenCV实现图像拼接
Mar 05 #Python
windows下Pycharm安装opencv的多种方法
Mar 05 #Python
解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)
Mar 05 #Python
浅谈Python的方法解析顺序(MRO)
Mar 05 #Python
python环境下安装opencv库的方法
Mar 05 #Python
Python序列化pickle模块使用详解
Mar 05 #Python
You might like
PHP开发环境配置(MySQL数据库安装图文教程)
2010/04/28 PHP
PHP中通过trigger_error触发PHP错误示例
2015/06/23 PHP
PHP实现上传多图即时显示与即时删除的方法
2017/05/09 PHP
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
基于javascipt-dom编程 table对象的使用
2013/04/22 Javascript
html5 canvas js(数字时钟)实例代码
2013/12/23 Javascript
JS实现鼠标滑过折叠与展开菜单效果代码
2015/09/06 Javascript
jQuery基本选择器(实例及表单域value的获取方法)
2016/05/20 Javascript
Jqprint实现页面打印
2017/01/06 Javascript
浅谈js中同名函数和同名变量的执行问题
2017/02/12 Javascript
import与export在node.js中的使用详解
2017/09/28 Javascript
解决vuejs项目里css引用背景图片不能显示的问题
2018/09/13 Javascript
JS 自执行函数原理及用法
2019/08/05 Javascript
基于layui table返回的值的多级嵌套的解决方法
2019/09/19 Javascript
[53:23]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
[01:02:38]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第二场 1月10日
2021/03/11 DOTA
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
python爬虫之模拟登陆csdn的实例代码
2018/05/18 Python
Python实现模拟浏览器请求及会话保持操作示例
2018/07/30 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
2019/01/29 Python
Python第三方库face_recognition在windows上的安装过程
2019/05/03 Python
对django的User模型和四种扩展/重写方法小结
2019/08/17 Python
HTML5标签与HTML4标签的区别示例介绍
2013/07/18 HTML / CSS
如何在C# winform中异步调用web services
2015/09/21 面试题
大专生自荐信
2013/10/04 职场文书
公司财务自我评价分享
2013/12/17 职场文书
列车长先进事迹材料
2014/01/25 职场文书
房屋出租协议书
2014/04/10 职场文书
地球一小时宣传标语
2014/06/24 职场文书
2014教师研修学习体会
2014/07/08 职场文书
《兰兰过桥》教学反思
2016/02/20 职场文书
找规律教学反思
2016/02/23 职场文书
读《儒林外史》有感:少一些功利,多一些真诚
2020/01/19 职场文书
MySQL中使用or、in与union all在查询命令下的效率对比
2021/05/26 MySQL
mysql数据库隔离级别详解
2022/06/16 MySQL