共计 1586 个字符,预计需要花费 4 分钟才能阅读完成。
前言
明天,咱们就来做一款实时截图辨认的小工具
开发工具
Python 版本: 3.9.4
相干模块:
PIL 模块
keyboard 模块
pytesseract 模块
以及一些 Python 自带的模块
效果图展现
源码剖析
期待用户截图
此处须要借助贴图神器(Snipaste)
其中“f1”是截图的快捷键,“ctrl+c”是把截图保留到剪贴板的快捷键。
如果应用 qq 截图的话,须要把快捷键改为对应的“ctrl+alt+c”和“enter”
import keyboard
# 利用截图软件(Snipaste)截图到剪贴板
# 输出键盘的触发事件
keyboard.wait(hotkey="f1")
keyboard.wait(hotkey="ctrl+c")
time.sleep(0.1)
下面这段代码执行之后,当初曾经有一张图片期待在剪贴板里了。
保留截图
利用 PIL 模块的 ImageGrab,能够把剪贴板里的那张图片,保留到以后的目录下,并命名为“screen.png”
from PIL import ImageGrab
# 把图片从剪切板保留到以后门路
image = ImageGrab.grabclipboard()
image.save("screen.png")
辨认截图中的文本
办法一
pytesseract 模块
长处:收费,易用
毛病:辨认成果很个别,准确率不高
应用办法介绍:
- pip install pytesseract
- 装置 tesseract-ocr.exe 配置环境变量
- 批改 pytesseract.py 文件,将 tesseract_cmd 指向 Tesseract-OCR 的 tesseract.exe 的绝对路径。
来看看成果:
办法二
百度 API 接口
AI 开放平台文档核心
https://ai.baidu.com/ai-doc
查看 python 语言的 SDK 文档
点击右上角(控制台),登录本人的百度账号,创立“文字辨认”的利用
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"]
for i in result:
print(i["words"])
文章到这里就完结了,感激你的观看,Python 实用脚本系列,下篇文章分享 python 打造实时截图辨认 OCR
为了感激读者们,我想把我最近珍藏的一些编程干货分享给大家,回馈每一个读者,心愿能帮到你们。
干货次要有:
① 2000 多本 Python 电子书(支流和经典的书籍应该都有了)
② Python 规范库材料(最全中文版)
③ 我的项目源码(四五十个乏味且经典的练手我的项目及源码)
④ Python 根底入门、爬虫、web 开发、大数据分析方面的视频(适宜小白学习)
⑤ Python 学习路线图(辞别不入流的学习)
⑥ 两天的 Python 爬虫训练营直播权限
All done~详见个人简介或者私信获取残缺源代码。。
往期回顾
Python 脚本实现玩转 emoji
Python 脚本实现疾速卡通化人物头像
Python 脚本实现天气查问利用
Python 实现主动监测 Github 我的项目并关上网页
Python 实现文件主动归类
Python 实现帮你抉择双色球号码
Python 实现每日更换“必应图片”为“桌面壁纸”
Python 实现批量加水印
Python 实现破译 zip 压缩包
Python 实现批量下载百度图片