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的另外几种语言实现
Jan 29 Python
Python正则表达式匹配中文用法示例
Jan 17 Python
python正则实现计算器功能
Dec 14 Python
用Python抢火车票的简单小程序实现解析
Aug 14 Python
python 计算两个列表的相关系数的实现
Aug 29 Python
postman和python mock测试过程图解
Feb 22 Python
解决pyqt5异常退出无提示信息的问题
Apr 08 Python
pyinstaller打包单文件时--uac-admin选项不起作用怎么办
Apr 15 Python
django orm模块中的 is_delete用法
May 20 Python
Django Form常用功能及代码示例
Oct 13 Python
Python批量修改xml的坐标值全部转为整数的实例代码
Nov 26 Python
教你如何使用Python Tkinter库制作记事本
Jun 10 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
当海贼王变成JOJO风
2020/03/02 日漫
PHP中函数内引用全局变量的方法
2008/10/20 PHP
PHP 提取图片img标记中的任意属性的简单实例
2013/12/10 PHP
js 对联广告、漂浮广告封装类(IE,FF,Opera,Safari,Chrome
2009/11/26 Javascript
JQuery切换显示的效果实例代码
2013/02/27 Javascript
纯Javascript实现Windows 8 Metro风格实现
2013/10/15 Javascript
类似php的js数组的in_array函数自定义方法
2013/12/27 Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
2015/07/03 Javascript
jquery插件ajaxupload实现文件上传操作
2015/12/09 Javascript
基于jquery实现简单的分页控件
2016/03/17 Javascript
Bootstrap表单控件使用方法详解
2017/01/11 Javascript
Vue监听数据对象变化源码
2017/03/09 Javascript
vue上传图片组件编写代码
2017/07/26 Javascript
JavaScript实现简单动态进度条效果
2018/04/06 Javascript
JS实现关键词高亮显示正则匹配
2018/06/22 Javascript
KOA+egg.js集成kafka消息队列的示例
2018/11/09 Javascript
jquery选择器和属性对象的操作实例分析
2020/01/10 jQuery
Vue组件跨层级获取组件操作
2020/07/27 Javascript
在vue中实现嵌套页面(iframe)
2020/07/30 Javascript
浅析 Vue 3.0 的组装式 API(一)
2020/08/31 Javascript
JavaScript实现音乐导航效果
2020/11/19 Javascript
wxpython 最小化到托盘与欢迎图片的实现方法
2014/06/09 Python
Python实现GUI学生信息管理系统
2020/04/05 Python
python取数作为临时极大值(极小值)的方法
2018/10/15 Python
Python基于pip实现离线打包过程详解
2020/05/15 Python
Python连接Mysql进行增删改查的示例代码
2020/08/03 Python
HTML5 常见面试题之PC端和移动端区别介绍
2018/01/22 HTML / CSS
canvas实现手机的手势解锁的步骤详细
2020/03/16 HTML / CSS
Sahajan美国:阿育吠陀护肤品牌
2021/01/09 全球购物
读书心得体会
2013/12/28 职场文书
工程技术员岗位职责
2014/03/02 职场文书
2014年党支部学习材料
2014/05/19 职场文书
乡镇党委书记第三阶段个人整改措施
2014/09/16 职场文书
技术股份合作协议书
2014/10/05 职场文书
傲慢与偏见电影观后感
2015/06/10 职场文书
Mysql中一千万条数据怎么快速查询
2021/12/06 MySQL