python+Tesseract OCR实现截屏识别文字

 更新时间:2026年02月07日 09:29:03   作者:秃了也弱了。  
pytesseract Python常用pytesseract进行图片上的文字识别,本文主要介绍了python+Tesseract OCR实现截屏识别文字,具有一定的参考价值,感兴趣的可以了解一下

一、tesseract-ocr下载安装

1、下载

以下是关于Tesseract的常用网址
下载地址:https://digi.bib.uni-mannheim.de/tesseract/
官方网站:https://github.com/tesseract-ocr/tesseract
官方文档:https://github.com/tesseract-ocr/tessdoc
语言包地址:https://github.com/tesseract-ocr/tessdata

2、安装tesseract-ocr

(1)选择语言

(2)开始安装

(3)同意许可

(4)选择安装的用户

(5)选择附带要安装的语言包

此后会在安装过程中会自动从服务器下载该语言包。(这里不太建议勾选下载语言包,因为下载速度实在太慢。本教程后续会介绍如何拓展语言包)

默认即可。

(6)安装位置

(7)开始安装

(8)安装完成

3、安装语言包

(1)下载安装

https://github.com/tesseract-ocr/tessdata

项目较大,可以按需下载简体中文:

将下载的文件存放到该目录:D:\Program Files\Tesseract-OCR\tessdata

注:若小伙伴无法科学上网,可以从这里下载简体中文语言包:https://www.jb51.net/softs/538925.html

(2)测试

进入到Tesseract OCR安装目录:

# 查看版本
PS D:\Program Files\Tesseract-OCR> .\tesseract.exe -v
tesseract v5.3.0.20221214
 leptonica-1.78.0
  libgif 5.1.4 : libjpeg 8d (libjpeg-turbo 1.5.3) : libpng 1.6.34 : libtiff 4.0.9 : zlib 1.2.11 : libwebp 0.6.1 : libopenjp2 2.3.0
 Found AVX2
 Found AVX
 Found FMA
 Found SSE4.1
 Found libarchive 3.5.0 zlib/1.2.11 liblzma/5.2.3 bz2lib/1.0.6 liblz4/1.7.5 libzstd/1.4.5
 Found libcurl/7.77.0-DEV Schannel zlib/1.2.11 zstd/1.4.5 libidn2/2.0.4 nghttp2/1.31.0
# 查看安装的语言包
PS D:\Program Files\Tesseract-OCR> .\tesseract.exe --list-langs
List of available languages in "D:\Program Files\Tesseract-OCR/tessdata/" (4):
chi_sim
chi_sim_vert
eng
osd

二、python截屏识别文字

1、安装必须的包

pip install pyautogui
pip install pytesseract

2、截屏识别文字

import pyautogui
import pytesseract

# 设置Tesseract的安装路径(如果它不在默认的系统路径中)
pytesseract.pytesseract.tesseract_cmd = 'D:/Program Files/Tesseract-OCR/tesseract.exe'

# 截取屏幕截图
screenshot = pyautogui.screenshot()

# 定义区域范围(左上角x坐标,左上角y坐标,右下角x坐标,右下角y坐标)
region = (100, 100, 300, 200)

# 从屏幕截图中使用指定区域创建一个新的图像对象
custom_screenshot = screenshot.crop(region)

# 将图像对象转换为灰度图像,以帮助提高文本识别的准确性
custom_screenshot = custom_screenshot.convert('L')

# 使用pytesseract进行文字识别
text = pytesseract.image_to_string(custom_screenshot)

# 打印识别的文本
print(text)

3、准确度

英文准确度还行,中文准确度。。。一言难尽。应该是可以通过训练提高准确度的。

参考资料

https://blog.csdn.net/weixin_51571728/article/details/120384909

到此这篇关于python+Tesseract OCR实现截屏识别文字的文章就介绍到这了,更多相关python Tesseract OCR 识别文字内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python中的np.round()函数示例详解

    python中的np.round()函数示例详解

    np.round()是NumPy库中的一个函数,用于对数组或单个数值进行四舍五入,该函数返回一个与输入类型相同的数组或数值,并可以通过可选的参数来指定保留的小数位数,这篇文章主要介绍了python中的np.round()函数,需要的朋友可以参考下
    2024-06-06
  • python爬虫获取淘宝天猫商品详细参数

    python爬虫获取淘宝天猫商品详细参数

    这篇文章主要为大家详细介绍了python爬虫获取淘宝天猫商品详细参数,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • python模块离线安装方式

    python模块离线安装方式

    这篇文章主要介绍了python模块离线安装方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • 浅析Python中字符串的intern机制

    浅析Python中字符串的intern机制

    这篇文章主要介绍了Python中字符串的intern机制,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-10-10
  • Django中使用Celery执行定时任务问题

    Django中使用Celery执行定时任务问题

    这篇文章主要介绍了Django中使用Celery执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 跟老齐学Python之不要红头文件(2)

    跟老齐学Python之不要红头文件(2)

    在前面学习了基本的打开和建立文件之后,就可以对文件进行多种多样的操作了。请看官要注意,文件,不是什么特别的东西,就是一个对象,如同对待此前学习过的字符串、列表等一样。
    2014-09-09
  • Python实现贪心算法的示例

    Python实现贪心算法的示例

    这篇文章主要介绍了Python实现贪心算法的示例,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-04-04
  • Python Asyncio 库之同步原语常用函数详解

    Python Asyncio 库之同步原语常用函数详解

    这篇文章主要为大家介绍了Python Asyncio 库之同步原语常用函数详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • python通过http下载文件的方法详解

    python通过http下载文件的方法详解

    这篇文章主要介绍了python通过http下载文件的方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python islower()函数的使用详解

    Python islower()函数的使用详解

    这篇文章主要介绍了Python islower()函数使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07

最新评论