位置: 编程技术 - 正文

基于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编写脚本处理数据)

  • 研发机构采购设计方案
  • 税务ukey如何清卡
  • 股份有限公司董事会决议必须经过
  • 固定资产怎么确定是否减值
  • 开一般户需要提交人行吗
  • 有税控盘怎么领发票
  • 新增资产额怎么计算
  • 未入账凭证
  • 接受的捐赠收入要交税吗
  • 房企视同买断销售的所得税处理
  • 转账支票的用途怎么写
  • 减少实收资本会引起资产和所有者权益发生变化吗
  • 简易办法征收一般纳税人开票税率
  • 发票票种核定怎么提交
  • 电信报表系统
  • 国家减免税额怎么入账
  • 原材料质量问题退回
  • 交通补贴和通讯补贴标准
  • 工商营业年报怎么做
  • 一般商业企业要缴纳哪些税?
  • 申请开立临时存档的条件
  • 销售东西的物流叫什么
  • 押金拿不到怎么解决
  • 个人取得经济补偿金个人所得税计算
  • 商标公司转让给个人提供什么?
  • 劳务报酬已经缴税怎么办
  • 1000元的打印机双十一满减可以减150吗少
  • 自己怎么做电脑系统
  • 住房公积金余额查询
  • Win10 20H1/20H2 KB5001391补丁今日发布(内附下载)
  • 承兑开出去能收回吗
  • 营改增后哪些费用可以抵扣
  • 销售方红字发票账务处理
  • 工伤补贴由谁发放
  • 运输发票税金怎么算
  • laravel实战教程
  • 低值易耗品是怎样的
  • php公众号开发框架
  • [JavaScript你真的以为这么简单吗]JavaScript高级
  • 领用包装物会计处理
  • unet bn
  • 国内php大牛
  • javascriptjs
  • python二叉树遍历算法
  • 打印空白表格怎么制作
  • PostgreSQL教程(一):数据表详解
  • mysql有什么优势和特点
  • sqlserver有实例吗
  • 消费税是在哪个环节缴纳
  • 制作费用和管理费用
  • 预缴税款是什么税款
  • 待抵扣进项税额和待认证进项税额的区别
  • 编制现金流量表应以什么为基础
  • 销售自行开发的房地产项目的增值税
  • 委托方和受委托方的法律关系
  • 进项税额转出可以在所得税前扣除吗
  • 怎么取最大值函数
  • 会计记账科目表
  • sql 重复记录
  • mysql5.7.29安装
  • vmware12安装教程图解
  • 雨林木风Windows10
  • Linux系统配置网关
  • 3dmax创建图形怎么用
  • opengl英文
  • android 欢迎页
  • java程序员准备骑驴找马了,需要怎么准备
  • js计算字符串长度 汉字长度
  • Android之Volley
  • 批处理执行bat文件
  • html里id
  • shell中的括号
  • unity3d ik
  • javascript中的函数
  • 浙里办怎么给小孩子缴医保费
  • 广州税务局前局长是谁
  • 资产管理公司收购不良资产后怎么处置
  • 个人出租平台有哪些
  • 国办函和国办发
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设