用python中的pytesseract实现文字识别的教程

简介: 用python中的pytesseract实现文字识别的教程

前言

本文章简单介绍如何用python中的pytesseract工具调用Tesseract库实现文字识别。本篇文章是搜集网络资料再结合本人的观点和思考编撰而成,在此十分感谢作者提供的帮助!

代码前准备

调用模块

首先,win+R在弹出的窗口中输入cmd(如图 1.1)

(tips:在此建议大家用“管理员”身份运行cmd)

输入后会弹出一个对话框,在对话框内先后输入以下两行代码

pip install pytesseract
pip install pillow


下载并安装Tesseract

介绍

Tesseract 是一个OCR 库,你可以用pytesseract这个OCR工具来调用它

下载安装

我们可以到这个网站 https://digi.bib.uni-mannheim.de/tesseract/中选择适合你电脑电脑系统以及Tesseract的版本(一般来说数字越大,版本越高)

选择合适的版本下载下来(图1.2)(注意这个w64和w32)

直接点击这个已经下好的安装包开始安装,点击Next>(图1.3)

再点击I Agree(图1.4)

这一步可以默认操作点击Next>(图1.5)


之后就是配置语言操作

Additional language data  (download)..........这是语言包下载(注意:因为Tesseract它本身并未有这个中文简体或繁体的识别语言包,所以这需要手动下载。除此还可以选择其它国家的语言包,来相对应识别文字的语言)(图1.6 和图1.7)

点击Next>点击后默认安装路径(注意:最好是默认安装路径!

原因是等会安装之后运行代码会报错报错的原因可能是“系统找不到指定文件”,这类的问题文章后面会说明如何解决

环境配置

(我说你做)首先在系统环境变量中的path复制这个安装后的文件(图1.8-图1.9)

代码实现

import os
import pytesseract
# 文字图片的路径
path = 'text_img/'
# 获取图片路径列表
imgs = [path + i for i in os.listdir(path)]
# 打开文件
f = open('text.txt', 'w+', encoding='utf-8')
# 将各个图片的路径写入text.txt文件当中
for img in imgs:
    f.write(img + '\n')
# 关闭文件
f.close()
# 文字识别
string = pytesseract.image_to_string('text.txt', lang='chi_sim')
print(string)

或者是这种

import os
import pytesseract
# 文字图片的路径
path = 'text_img/'
# 获取图片路径列表
imgs = [path + i for i in os.listdir(path)]
# 打开文件
f = open('text.txt', 'w+', encoding='utf-8')
# 将各个图片的路径写入text.txt文件当中
for img in imgs:
    f.write(img + '\n')
# 关闭文件
f.close()
# 文字识别
string = pytesseract.image_to_string('text.txt', lang='chi_sim')
print(string)

注意下!图片存放的位置要注意是在同级还是在非同级

如代码一它这个是图片与程序非同级,代码二则是同级的!!!(图1.10代码一;图1.11代码二)

算便说一下代码一中的“text”是储存识别图片的名字数据(注意图片的名字不含中文、字符等等)

常见问题解答

一、FileNotFoundError:[WinError 2]系统找不到指定文件。

前面提过了吧!若是要保留这样你可以这么做试试(python-文字识别-tesseract - 知乎 (zhihu.com))#这是别人的作者提供的方案。十分感谢他。

二、(错误如下)

没错这是图片的名称含有这个特殊字符、中文等(总之是名称不规范)改一下试试。文章的“代码实现”还提供了两个方式若实在不行换另一个试试。


好了该篇文章结束了,也希望这也能帮助到你,愿你的python编程实力不断增强!

(若文章有一些问题请及时联系作者以便即使改正,谢谢!)

相关文章
|
8月前
|
数据采集 存储 XML
Python爬虫技术:从基础到实战的完整教程
最后强调: 父母法律法规限制下进行网络抓取活动; 不得侵犯他人版权隐私利益; 同时也要注意个人安全防止泄露敏感信息.
1003 19
|
7月前
|
机器学习/深度学习 文字识别 Linux
Umi-OCR_文字识别工具 免安装使用教程(附下载安装包)!永久免费,开源离线OCR识别软件下载
Umi-OCR是一款开源免费、支持离线运行的高精度OCR文字识别工具,基于深度学习技术,可快速识别中文、英文、日文等多种语言。无需联网,保护隐私,适用于Windows和Linux系统,解压即用,操作简便,是处理图片转文本的理想选择。
4077 7
|
7月前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
321 1
|
8月前
|
机器学习/深度学习 文字识别 Java
Python实现PDF图片OCR识别:从原理到实战的全流程解析
本文详解2025年Python实现扫描PDF文本提取的四大OCR方案(Tesseract、EasyOCR、PaddleOCR、OCRmyPDF),涵盖环境配置、图像预处理、核心识别与性能优化,结合财务票据、古籍数字化等实战场景,助力高效构建自动化文档处理系统。
1973 0
|
8月前
|
数据采集 存储 JSON
使用Python获取1688商品详情的教程
本教程介绍如何使用Python爬取1688商品详情信息,涵盖环境配置、代码编写、数据处理及合法合规注意事项,助你快速掌握商品数据抓取与保存技巧。
|
10月前
|
机器学习/深度学习 数据安全/隐私保护 计算机视觉
过三色刷脸技术,过三色刷脸技术教程,插件过人脸python分享学习
三色刷脸技术是基于RGB三通道分离的人脸特征提取方法,通过分析人脸在不同颜色通道的特征差异
|
10月前
|
XML Linux 区块链
Python提取Word表格数据教程(含.doc/.docx)
本文介绍了使用LibreOffice和python-docx库处理DOC文档表格的方法。首先需安装LibreOffice进行DOC到DOCX的格式转换,然后通过python-docx读取和修改表格数据。文中提供了详细的代码示例,包括格式转换函数、表格读取函数以及修改保存功能。该方法适用于Windows和Linux系统,解决了老旧DOC格式文档的处理难题,为需要处理历史文档的用户提供了实用解决方案。
1126 1
|
9月前
|
并行计算 算法 Java
Python3解释器深度解析与实战教程:从源码到性能优化的全路径探索
Python解释器不止CPython,还包括PyPy、MicroPython、GraalVM等,各具特色,适用于不同场景。本文深入解析Python解释器的工作原理、内存管理机制、GIL限制及其优化策略,并介绍性能调优工具链及未来发展方向,助力开发者提升Python应用性能。
510 0
|
12月前
|
人工智能 安全 Shell
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
742 2
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
|
9月前
|
数据采集 索引 Python
Python Slice函数使用教程 - 详解与示例 | Python切片操作指南
Python中的`slice()`函数用于创建切片对象,以便对序列(如列表、字符串、元组)进行高效切片操作。它支持指定起始索引、结束索引和步长,提升代码可读性和灵活性。

推荐镜像

更多