关键词搜索

源码搜索 ×
×

Python实用案例,python10行脚本打造实时截图识别OCR,轻松搞定“百度文库”

发布2021-08-13浏览302次

详情内容

前言

今天,我们就来做一款实时截图识别的小工具

开发工具

Python版本: 3.9.4

相关模块:

PIL模块

keyboard模块

pytesseract模块

以及一些Python自带的模块

效果图展示

在这里插入图片描述
在这里插入图片描述

源码分析

等待用户截图

此处需要借助贴图神器(Snipaste)
其中“f1”是截图的快捷键,“ctrl+c”是把截图保存到剪贴板的快捷键。

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

  1. import keyboard
  2. # 利用截图软件(Snipaste)截图到剪贴板
  3. # 输入键盘的触发事件
  4. keyboard.wait(hotkey="f1")
  5. keyboard.wait(hotkey="ctrl+c")
  6. time.sleep(0.1)

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

保存截图

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

  1. from PIL import ImageGrab
  2. # 把图片从剪切板保存到当前路径
  3. image = ImageGrab.grabclipboard()
  4. image.save("screen.png")

识别截图中的文本

方法一

pytesseract模块

优点:免费,易用
缺点:识别效果很一般,准确率不高

使用方法介绍:

  1. pip install pytesseract

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

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

来看看效果:

图片

方法二

百度API接口

AI开放平台文档中心
https://ai.baidu.com/ai-doc

百度API接口
查看python语言的SDK文档
在这里插入图片描述
点击右上角(控制台),登录自己的百度账号,创建“文字识别”的应用

在这里插入图片描述

  1. import pytesseract
  2. from aip import AipOcr
  3. from PIL import ImageGrab
  4. # 法二:利用百度API
  5. APP_ID = '你的 App ID'
  6. API_KEY = '你的 Api Key'
  7. SECRET_KEY = '你的 Secret Key'
  8. client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
  9. # 读取图片
  10. with open("screen.png", 'rb') as f:
  11. image = f.read()
  12. # 调用百度API通用文字识别(高精度版),提取图片中的内容
  13. text = client.basicAccurate(image)
  14. result = text["words_result"]
  15. for i in result:
  16. print(i["words"])

c#教程章到python教程这里就vb.net教程结束了,感谢你的观看,下篇文章分享python打造实时截图识别OCR

为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载