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

作者:骑着螞蟻流浪 时间:2021-07-02 12:58:20 

一、简介

你一定用过那种“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)识别截图中的文本

来源:https://www.cnblogs.com/mayi0312/p/12395336.html

标签:Python,识别,OCR,工具
0
投稿

猜你喜欢

  • 再论Javascript的类继承

    2010-06-26 12:48:00
  • Mootools常用方法扩展(三)

    2009-01-14 20:07:00
  • 在JavaScript中,为什么要尽可能使用局部变量?

    2009-03-01 12:38:00
  • 深入SQL SERVER 2000的内存管理机制

    2010-04-25 10:52:00
  • 先学会为自己做设计

    2008-06-01 16:32:00
  • 谈点关于checkbox的事情

    2010-09-28 14:49:00
  • asp如何用CDONTS发送带附件的邮件?

    2010-06-11 19:57:00
  • 如何操作Access数据库?

    2009-11-11 19:23:00
  • Python及Django框架生成二维码的方法分析

    2023-10-11 22:25:48
  • go语言睡眠排序算法实例分析

    2023-07-15 17:42:56
  • MySQL表设计优化与索引 (九)

    2010-10-25 20:16:00
  • SQL Server可写脚本和编程扩展SSIS包

    2009-01-20 16:29:00
  • Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例

    2023-07-29 00:03:51
  • python模拟鼠标拖动操作的方法

    2021-10-02 15:06:07
  • CODEPAGE=936是什么意思?

    2009-07-05 18:37:00
  • JSP实现登录功能之添加验证码

    2023-07-16 12:18:09
  • IE9报“DOM Exception: INVALID_CHARACTER_ERR (5)”错误的原因及解决办法

    2011-09-01 19:11:07
  • MySQL内建复制功能来优化可用性

    2010-10-25 20:20:00
  • 实现页面中按钮刷新的N种方法

    2007-02-03 11:06:00
  • 网页iframe元素应用浅析

    2009-04-11 18:11:00
  • asp之家 网络编程 m.aspxhome.com