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统计列表中的重复项出现的次数的方法
Aug 18 Python
理解Python中函数的参数
Apr 27 Python
python实现查找excel里某一列重复数据并且剔除后打印的方法
May 26 Python
用Python实现命令行闹钟脚本实例
Sep 05 Python
python通过pip更新所有已安装的包实现方法
May 19 Python
使用Pyinstaller的最新踩坑实战记录
Nov 08 Python
flask中主动抛出异常及统一异常处理代码示例
Jan 18 Python
解决python3中cv2读取中文路径的问题
Dec 05 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
Dec 18 Python
如何在django里上传csv文件并进行入库处理的方法
Jan 02 Python
Pyinstaller打包.py生成.exe的方法和报错总结
Apr 02 Python
Pygame Event事件模块的详细示例
Nov 17 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
多重?l件?合查?(一)
2006/10/09 PHP
php 验证码制作(网树注释思想)
2009/07/20 PHP
IIS6.0 开启Gzip方法及PHP Gzip函数分享
2014/06/08 PHP
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
ThinkPHP 模板substr的截取字符串函数详解
2017/01/09 PHP
php根据命令行参数生成配置文件详解
2019/03/15 PHP
浅谈javascript 面向对象编程
2009/10/28 Javascript
javascript将浮点数转换成整数的三个方法
2014/06/23 Javascript
JavaScript随机生成信用卡卡号的方法
2015/04/07 Javascript
jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码
2015/09/09 Javascript
JQuery中Ajax()的data参数类型实例分析
2015/12/15 Javascript
javascript实现可键盘控制的抽奖系统
2016/03/10 Javascript
javascript鼠标跟随运动3种效果(眼球效果,苹果菜单,方向跟随)
2016/10/27 Javascript
JS控件bootstrap datepicker使用方法详解
2017/03/25 Javascript
原生JS实现九宫格抽奖效果
2017/04/01 Javascript
微信小程序中多个页面传参通信的学习与实践
2017/05/05 Javascript
bootstrap弹出层的多种触发方式
2017/05/10 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
react-native使用react-navigation进行页面跳转导航的示例
2017/09/07 Javascript
easyUI 实现的后台分页与前台显示功能示例
2020/06/01 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
Python异常处理操作实例详解
2018/05/10 Python
Tensorflow 查看变量的值方法
2018/06/14 Python
python安装twisted的问题解析
2018/08/21 Python
python笔记之mean()函数实现求取均值的功能代码
2019/07/05 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
旷课检讨书1000字
2014/02/14 职场文书
入党自荐书范文
2014/03/09 职场文书
数字化校园建设方案
2014/05/03 职场文书
环保专项行动方案
2014/05/12 职场文书
交通事故死亡赔偿协议书
2014/12/03 职场文书
长城的导游词
2015/01/30 职场文书
大学班长竞选稿
2015/11/20 职场文书
vue3中provide && inject的使用
2021/07/01 Vue.js
pycharm安装深度学习pytorch的d2l包失败问题解决
2022/03/25 Python