位置: 编程技术 - 正文

基于Python实现对PDF文件的OCR识别(利用python进行)

编辑:rootadmin

推荐整理分享基于Python实现对PDF文件的OCR识别(利用python进行),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:基于python的数据处理案例,基于python的,基于python的,基于python语言,基于python的数据处理案例,利用python进行,基于python语言,利用python进行,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在做一个项目的时候,需要将PDF文件作为输入,从中输出文本,然后将文本存入数据库中。为此,我找寻了很久的解决方案,最终才确定使用tesseract。所以不要浪费时间了,我们开始吧。

1.安装tesseract

在不同的系统中安装tesseract非常容易。为了简便,我们以Ubuntu为例。

在Ubuntu中你仅仅需要运行以下命令:

这将会安装支持3种不同语言的tesseract。

2.安装PyOCR

现在我们还需要安装tesseract的Python接口。幸运的是,有许多出色的Python接口。

我们采用最新的一个:

3.安装Wand和PIL

在我们开始之前,还需要另外安装两个依赖包。一个是Wand。它是Imagemagick的Python接口。

我们需要使用它来将PDF文件转换成图像:

基于Python实现对PDF文件的OCR识别(利用python进行)

我们也需要PIL因为PyOCR需要使用它。你可以查看官方文档以确定如何将PIL安装到你的操作系统中。

4.热身

让我们开始我们的脚本吧。首先,我们需要导入一些重要的库:

注意:我将从PIL导入的Image模块改名为PI了,因为如果不这样做的话,它将和wand.image模块发生重名冲突。

5.开始

现在我们需要获得OCR库(在本例中,即tesseract)的句柄以及我们在PyOCR中将使用的语言:

我们使用tool.get_available_languages里的第二种语言,因为之前我曾尝试过,第二种语言就是英语。

接着,我们需要建立两个列表,用于存储我们的图像和最终的文本。

下一步,我们需要采用wand将一个PDF文件转成jpeg文件。让我们试一试吧!

注意:将PDF_FILE_NAME替换成当前路径下的一个可用的PDF文件名。

wand已经将PDF中所有的独立页面都转成了独立的二进制图像对象。我们可以遍历这个大对象,并把它们加入到req_image序列中去。

现在,我们仅仅需要在图像对象上运行OCR即可,非常简单:

现在,所有识别出的文本已经加到了final_text序列中了。你可以任意地使用它。

标签: 利用python进行

本文链接地址:https://www.jiuchutong.com/biancheng/386253.html 转载请保留说明!

上一篇:利用Python实现命令行版的火车票查看器(pytho命名规则)

下一篇:Python脚本处理空格的方法(如何用python编写脚本处理数据)

  • 个人所得税征收标准表
  • 取得发票与实际业务不符怎么办
  • 后期装修改造费用计入什么科目
  • 上期留抵税额会计分录
  • 季报现金流量表是必报表吗
  • 快递费未支付应该寄走了吗
  • 设备租赁合同需要审核吗
  • 转账支票存根联图片
  • 企业清算需要什么
  • 税务系统有问题
  • 结转本年度收入
  • 私人转公账可以开发票吗
  • 未收到发票可以计提成本吗
  • 员工个人抬头的医院发票可以入账吗
  • 免税发票备注栏
  • 以前年度亏损可以税前扣除吗
  • 会员的消费频次怎么计算
  • 营业成本包括费用类吗
  • 软件企业所得税两免三减半
  • 职工福利费计提标准是多少
  • win11 zen3
  • win10 21h1正式版怎么样
  • 如何在电脑管家下载软件
  • 教程图怎么做
  • Element UI 及 Element Plus框架
  • Win10待机唤醒后白屏怎么办
  • phpstorm ftp
  • 购买车辆的会计分录该怎样做
  • 复式记账法含义
  • 购买加油卡能否抵扣
  • Symfony2 session用法实例分析
  • 陆家嘴金融贸易区管委会主任
  • php中面向对象
  • 大前端需要掌握什么技能
  • vue中 router.beforeEach() 的用法
  • 会计期初余额和期末余额计算公式
  • 工会经费免征三年的文件山东
  • java 日志系统
  • mongodb bi
  • 电费已付,没有收到发票
  • 设计费可以抵扣进项吗
  • 管理费用和研发费用的关系
  • 非限定性净资产相当于本年利润吗
  • 简述sql server 2008的新增功能
  • 提高资产利用率的例子
  • 股东的报销款可以抵投资款吗
  • 银行对账单和存款日记账怎样核对并标识
  • 一次性医疗补助金怎么计算
  • 增值税税收滞纳金比例
  • 残保金申报常见问题
  • 实时缴税计入什么科目
  • 预支报销怎么做账
  • 现金流量的构成内容
  • 土地增值税怎么预交税款
  • 进口车购置税多少个点
  • 运费是属于什么会计科目
  • 商业企业注销应检查哪方面的问题
  • sql server2005一个表中可以设置
  • 利用phpmyadmin写shell的方法
  • 系统存储过程以什么为前缀
  • vista sp2 旗舰版 key
  • linux命令提示符不见了
  • yum源如何配置
  • ubuntu命令行中文乱码怎么解决
  • 电脑操作系统7
  • mac安全设置在哪里
  • windows8怎么设置开机密码
  • iis安装步骤 windows server 2008
  • Win10 Build 14279正式推送 更新后QQ可能会崩溃
  • 怎么在linux中安装软件
  • jquery 限制文件大小
  • opengl3d
  • nginx日志按天切割
  • jquery的加载事件
  • nodejs socket hang up
  • shell脚本检查语法
  • node中异步编程模式使用什么捕获异常
  • node中使用什么引入模块
  • 房地产开发企业会计制度
  • 云办税大厅
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设