位置: 编程技术 - 正文

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

  • 个税抵扣申报晚好了需要跟公司申报吗?
  • 小规模纳税人能开1%的专票吗
  • 委托加工应税消费品收回后直接销售
  • 车辆购置税会计核算
  • 个人取得上市公司股票期权个人所得税
  • 工业企业结转成本表格模板
  • 小规模未开票收入填在哪里
  • 旧房转让土地增值税计算案例
  • 房产租赁合同印花税
  • 支票结算业务流程
  • 税收的优惠性政策包括哪些
  • 先抵扣后付款怎么做账
  • 免费的企业
  • 生产车间计提固定资产折旧会计科目
  • 预收物业费是否必须开具发票
  • 递延所得税费用为负数是什么意思
  • 哪些房产免纳房产税
  • 财务杠杆系数取值范围
  • 开票的时候如何把价格分散开
  • 纳税调整额怎么算出来的
  • 小微企业附加税减半
  • 以货换货账务怎么处理
  • 集团内部股权无偿划转引起资本公积增加需要印花税
  • 小规模纳税人印花税怎样计算
  • 小规模纳税人月销售额不超过10万免征
  • 项目工程会计账务处理
  • linux和windows关系
  • win10系统电脑怎么连接wifi
  • ctrl起什么作用
  • PHP:pg_field_prtlen()的用法_PostgreSQL函数
  • 总公司拨给分公司的钱怎么平账
  • 钢铁企业成本核算表
  • 企业所得税征收点
  • php获取数组的值
  • python字符串操作作业
  • node.js如何安装
  • php 访问数据库
  • 机关单位工会经费提取比例
  • 审稿意见范例
  • 给大家分享几个网站
  • vue中methods的作用
  • 代扣代缴境外增值税时间
  • 养老保险进账金额
  • 应付票据的贴现账务处理
  • mysql是自动提交的吗
  • 织梦自定义字段
  • 交通费用怎么报销
  • 印花税已缴税额
  • 房屋租赁税缴纳时间
  • 费用报销票跨月可以用吗
  • 小规模纳税人缴纳的增值税计入成本吗
  • 公司没有车加油费怎么报
  • 免费赠送客户入群的文案
  • 收到保险公司的发票怎么做账
  • 业务招待费包含样品费吗
  • 增发股票会计科目
  • 银行存款明细账借方代表什么
  • mysql主从复制作用
  • 电脑开机时进入安全模式怎么退出
  • 通过防火墙可以保证窃听到的信息毫无价值
  • 番茄花园论坛
  • saproxy.exe - saproxy是什么进程 有什么用
  • win10桌面图标无法正常显示
  • java美化按钮
  • js中密码由字母和数字组成,长度为4-20
  • JavaScript—window对象使用示例
  • 安卓的通用在哪里
  • python爬虫工作内容
  • linux搭建ftp服务器
  • shell脚本特性
  • js移动dom
  • bootstrap js插件
  • jquery设置元素css
  • [置顶]游戏名:chivalry2
  • js事件循环过程
  • 利用jQuery实现一个时间无法显示
  • 落地和全包一样吗
  • 广州地税局官网办事点
  • 税务全面从严治党工作会议讲话稿
  • 临沂市2020年居民燃气价格
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设