pdfminer分析

解析PDF是一件非常耗时和内存的工作,因此PDFMiner使用了一种称作lazy parsing的策略,只在需要的时候才去解析,以减少时间和内存的使用。

要解析PDF至少需要两个类:PDFParser 和 PDFDocument

  • PDFParser 从文件中提取数据
  • PDFDocument 保存数据

另外还需要PDFPageInterpreter去处理页面内容,PDFDevice将其转换为我们所需要的。PDFResourceManager用于保存共享内容例如字体或图片。

比较重要的是Layout,主要包括以下这些组件:

LTPage:Represents an entire page. May contain child objects like

  • LTTextBox
  • LTFigure
  • LTImage
  • LTRect
  • LTCurve
  • LTLine

代码分析

PDF不像word,TXT可以随意读取内容,本身读取PDF就是一件比较困难的事,用程序去读取PDF的时候也是以二进制去读取PDF然后在转换成文字。

PDF更像一张图片。PDF更像是在一张纸的各个准确的位置上把内容都摆放出来。大部分情况下,没有逻辑结构,比如句子或段落,并且不能自适应页面大小的调整。PDFMiner尝试通过猜测它们的布局来重建它们的结构,但是不保证一定能工作。

我们把流程图分解来看:

解析PDF的时候有两个核心方法:PDFParse和PDFDocument,他们两个结合使用就可以解析PDF

  • PDFParser 从文件中获取数据

  • PDFDocument 存储文档数据结构到内存中

  • PDFPageInterpreter 解析page内容

  • PDFDevice 把解析到的内容转化为你需要的东西

  • PDFResourceManager存储共享资源,例如字体或图片

Pdfminer 分析相关推荐

  1. python读取pdf表格_【Python 库】解析PDF文本及表格——pdfminer、tabula、pdfplumber 的用法及对比...

    pdf 是个异常坑爹的东西,有很多处理 pdf 的库,但是没有完美的. 一.pdfminer3k pdfminer3k 是 pdfminer 的 python3 版本,主要用于读取 pdf 中的文本. ...

  2. Python 第三方模块之 PDFMiner(pdf信息提取)

    PDFMiner简介 pdf提取目前的解决方案大致只有pyPDF和PDFMiner.据说PDFMiner更适合文本的解析,首先说明的是解析PDF是非常蛋疼的事,即使是PDFMiner对于格式不工整的P ...

  3. pdf各种处理 PDF 的实用代码:PyPDF2、PDFMiner、pdfplumber

    你不懂得安排自己的人生,会有很多人帮你安排,他们需要你做的事. PDF文件我们经常用,尤其是这两个场景: 下载参考资料,如各类报告.文档 分享只读资料,方便传播同时保留源文件 场景和模块 所以,对于P ...

  4. Python实现分析pdf或者Word形式简历,并且保存到Excel中

    Python实现分析当前文件夹里面所有的pdf或者Word形式简历,并且保存到Excel中 # -*- coding:utf-8 -*-#作者:公众号:湾区人工智能 #功能:实现分析pdf或者Word ...

  5. python处理pdf实例_python使用pdfminer解析pdf文件的方法示例

    最近要做个从 pdf 文件中抽取文本内容的工具,大概查了一下 python 里可以使用 pdfminer 来实现.下面就看看怎样使用吧. PDFMiner是一个可以从PDF文档中提取信息的工具.与其他 ...

  6. python 读取pdf cid_python使用pdfminer解析pdf文件的方法示例

    最近要做个从 pdf 文件中抽取文本内容的工具,大概查了一下 python 里可以使用 pdfminer 来实现.下面就看看怎样使用吧. PDFMiner是一个可以从PDF文档中提取信息的工具.与其他 ...

  7. python pdfminer的功能_python:pdfminer接口测试

    目录: 简介 pdfparser使用介绍 1 from pdfminer.pdfparser import PDFParser, PDFDocument pdfparser是一个pdf解析器,里面封装 ...

  8. 中文文本分析, Text-Analysis

    中文文本分析, Text-Analysis Text-Analysis包括analysis-word 词语分析和analysis-classify 文本分类数据分析等, 支持python3读写word ...

  9. python英文文本分析和提取_python如何提取英语pdf内容并翻译

    本文实例为大家分享了python提取英语pdf内容并翻译的具体代码,供大家参考,具体内容如下 前期准备工作: 翻译接口: 调用的是百度翻译的api(注册后,每个月有2百万的免费翻译字符数.) pdfm ...

  10. 文本分析 | 年报转换TXT关键词频统计

    前言 上篇文章<[爬虫]30行代码轻松爬取全部A股公司年报>介绍了如何爬取2003-2019年A股全部年报,但是爬取的年报都是PDF格式,不能直接用于文本分析,需要先转换为TXT格式.因此 ...

最新文章

  1. Jquery系列:checkbox 获取值、选中、设置值、事件监听等操作
  2. sql计算留存_免费教程《图解SQL面试题》
  3. 第5章 线性回归算法
  4. ECshop中defined('IN_ECS')的实现原理
  5. 6-11数据库mysql初始
  6. java核心标签库,16.JSTL标签库(我的JavaEE笔记)
  7. [翻译]延迟着色(1)
  8. 如何查看某个用户指定时间段的ABAP开发记录
  9. 洛谷 P1414 又是毕业季II (多个数的最大公因数)
  10. 【同行说技术】教你玩转iOS的5篇技术干货
  11. of方法:给集合一次性添加多个元素
  12. 辞旧迎新,胖了几斤?数据告诉你,这种东西你就不该吃
  13. python调用函数怎么错_在Python中从类调用函数时参数数目错误
  14. BoneCP主要配置参数
  15. unity常用的引用赋值一个GameObject的三种方法
  16. js数组再倒数第二个添加元素_js 循环对象数组将元素逐个添加至新数组问题
  17. 找到7天内要过生日的记录
  18. LCD TTL/LVDS 任意分辨率 timing 时序配置及时序关系(前肩后肩)
  19. 樊登读书会掌控读后感_樊登读后感悟,樊登读书会《爆款》读后感
  20. ue4/5玻璃材质制作(简单易懂上手)

热门文章

  1. wpsppt怎样让图片模糊_PPT怎么设置图片由模糊到清楚?
  2. HP1010 不能连续打印维修一例
  3. Excel开发入门(C#和C++实例)
  4. 一文教你学会DIY串口线
  5. 常用的不透明度的值,以黑色为例
  6. oracle数据库开机自启,oracle数据库开机自动启动
  7. java不想被gc,Java GC 必知必会
  8. Excel之VBA简单宏编程
  9. mysql 中的 SCHEMATA 表
  10. dell计算机一直重启,为什么电脑老重启