10几行代码,用python打造实时截图识别OCR

栏目: IT技术 · 发布时间: 4年前

内容简介:重磅干货,第一时间送达

点击上方“ 涛哥聊Python ”,选择“星标”公众号

重磅干货,第一时间送达

来源: GitPython

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

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

下次,当你想要复制“百度文库”中的内容时,不妨试试这个程序。

效果预览

10几行代码,用 <a href='https://www.codercto.com/topics/20097.html'>python</a> 打造实时截图识别OCR

10几行代码,用python打造实时截图识别OCR

源码解析

1)等待用户截图

此处需要借助贴图神器(Snipaste)

其中“f1”是 截图的快捷键 ,“ctrl+c”是把截图保存到剪贴板的快捷键。

如果使用qq截图的话, 需要把快捷键改为对应的“ctrl+alt+c”和“enter”

顺便安利一波Snipaste,

必备效率神器

import keyboard

# 利用截图软件(Snipaste)截图到剪贴板

# 输入键盘的触发事件

keyboard.wait(hotkey= "f1" )  

keyboard.wait(hotkey= "ctrl+c" )

0.1

)

上面这段代码执行之后,现在已经有一张图片等待在剪贴板里了。

2)保存截图

利用PIL模块的ImageGrab,可以把剪贴板里的那张图片,保存到当前的目录下,并命名为“screen.png”

from PIL  import ImageGrab

# 把图片从剪切板保存到当前路径

image = ImageGrab.grabclipboard()  

"screen.png"

)

3)识别截图中的文本

法一

pytesseract模块

优点:免费,易用

缺点:识别效果很一般,准确率不高

使用方法介绍:

1)pip install pytesseract

2)安装 tesseract-ocr.exe 配置环境变量

3)修改pytesseract.py文件,将tesseract_cmd指向Tesseract-OCR的tesseract.exe的绝对路径。

参考文章

见评论第一条

import pytesseract

from PIL  import Image

# 法一:利用pytesseract模块

# 参数一:图片 

# 参数二:简体中文

text = pytesseract.image_to_string(Image.open( "screen.png" ), lang= 'chi_sim' )

print(text)

来看看效果:

10几行代码,用python打造实时截图识别OCR

low的不行

果然,要想精度高,还得用百度API

法二

百度API接口

AI开放平台文档中心

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

10几行代码,用python打造实时截图识别OCR

查看python语言的SDK文档

10几行代码,用python打造实时截图识别OCR

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

10几行代码,用python打造实时截图识别OCR

import pytesseract

from aip  import AipOcr

from PIL  import ImageGrab

# 法二:利用百度API

APP_ID =  '你的 App ID'

API_KEY =  '你的 Api Key'

SECRET_KEY =  '你的 Secret Key'

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" ]

forin result:

"words"

])

结果

如文章首图:

10几行代码,用python打造实时截图识别OCR

我是总结

1)等待用户截图

2保存截图到当前目录

3)识别截图中的文本

其中识别截图文本,有两种方法:

1)利用 pytesseract 模块

2)利用百度API接口

回复“OCR”

可获取完整代码的Github地址

10几行代码,用python打造实时截图识别OCR

SQL 已死,但 SQL 将永存!

五分钟搞定 Linux 文档全部知识,就看这篇文章

B站收藏 6.1w+! GitHub 标星 3.9k+! 这门神课拯救了我薄弱的计算机基础

10几行代码,用python打造实时截图识别OCR

10几行代码,用python打造实时截图识别OCR


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web Design for ROI

Web Design for ROI

Lance Loveday、Sandra Niehaus / New Riders Press / 2007-10-27 / USD 39.99

Your web site is a business--design it like one. Billions of dollars in spending decisions are influenced by web sites. So why aren't businesses laser-focused on designing their sites to maximize thei......一起来看看 《Web Design for ROI》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具