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 相关文章推荐
Python中的descriptor描述器简明使用指南
Jun 02 Python
python 中的divmod数字处理函数浅析
Oct 17 Python
Python操作MongoDB数据库的方法示例
Jan 04 Python
python求最大连续子数组的和
Jul 07 Python
如何使用pyinstaller打包32位的exe程序
May 26 Python
python 接口实现 供第三方调用的例子
Aug 13 Python
python Dijkstra算法实现最短路径问题的方法
Sep 19 Python
Django视图扩展类知识点详解
Oct 25 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
Jan 20 Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
Feb 09 Python
python tkinter GUI绘制,以及点击更新显示图片代码
Mar 14 Python
Pytorch 使用opnecv读入图像由HWC转为BCHW格式方式
Jun 02 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
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
php smarty模版引擎中的缓存应用
2009/12/11 PHP
使用PHP提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
2018/07/30 PHP
php抽象方法和普通方法的区别点总结
2019/10/13 PHP
js 目录列举函数
2008/11/06 Javascript
jquery中的 $("#jb51")与document.getElementById("jb51") 的区别
2011/07/26 Javascript
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
2013/05/13 Javascript
动态读取JSON解析键值对的方法
2014/06/03 Javascript
浏览器复制插件zeroclipboard使用指南
2016/03/26 Javascript
JS获取url参数、主域名的方法实例分析
2016/08/03 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
javascript 判断当前浏览器版本并判断ie版本
2017/02/17 Javascript
JQ图片文件上传之前预览功能的简单实例(分享)
2017/11/12 Javascript
在vue中使用G2图表的示例代码
2019/03/19 Javascript
VUE实现图片验证码功能
2020/11/18 Javascript
vue项目中使用vue-layer弹框插件的方法
2020/03/11 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
2020/03/16 Javascript
[06:16]DOTA2守卫传承者——职业选手谈心路历程
2015/02/26 DOTA
[51:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/30 DOTA
python 远程统计文件代码分享
2015/05/14 Python
python下调用pytesseract识别某网站验证码的实现方法
2016/06/06 Python
python跳过第一行快速读取文件内容的实例
2018/07/12 Python
Python上下文管理器全实例详解
2019/11/12 Python
Django admin管理工具TabularInline类用法详解
2020/05/14 Python
Win 10下Anaconda虚拟环境的教程
2020/05/18 Python
使用Python下载抖音各大V视频的思路详解
2021/02/06 Python
世界上最大的专业美容用品零售商:Sally Beauty
2017/07/02 全球购物
狗狗玩具、零食和咀嚼物的月度送货服务:Super Chewer
2018/08/22 全球购物
大学生求职简历的自我评价范文
2013/10/12 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
就业意向书范文
2014/04/01 职场文书
英语辞职信怎么写
2015/02/28 职场文书
高中家长意见怎么写
2015/06/03 职场文书
消费者理赔投诉书
2015/07/02 职场文书
Python爬虫数据的分类及json数据使用小结
2021/03/29 Python