编程语言
首页 > 编程语言> > python – 解析PDF文档中的表

python – 解析PDF文档中的表

作者:互联网

此链接(http://www.lenovo.com/psref/pdf/psref450.pdf)中的PDF包含许多这样的表:

我想以编程方式从这些表中提取数据和结构.

我尝试过的事情:使用PDF将PDF转换为HTML

> Tika:不幸的是,这些表被转换为空格分隔
段落 – 有些字符串包含空格,所以它是
分裂它们是不可能的.
> Python的PDFMiner:由于缺少字体而返回了一个断言错误.我怀疑HTML会与输出相似
Tika,虽然我需要解决丢失字体的问题
确认一下.
>在线工具:我尝试过http://www.zamzar.com/和其他几个.该文件太大而无法处理(对于在线
服务)或它产生的错误.

我打算将PDF转换为HTML,然后使用BeautifulSoup解析它.

输出可以是JSON(例如,每个表一个对象),XML,或几乎任何维护结构的格式.

解决方法:

你可以试试PDFBox.该文档在这里:

https://pdfbox.apache.org/1.8/cookbook/textextraction.html

扩展org.apache.pdfbox.pdfviewer.PDFPageDrawer并覆盖strokePath方法.从那里,您可以截取水平和垂直线段的绘制操作,并使用该信息确定列和行位置.您可以设置文本区域以确定在哪个区域中绘制哪些数字/字母/字符.由于您知道区域的布局是表格式的,因此您将能够使用简单算法定义表并告知提取的文本属于哪个列和行.

标签:python,parsing,pdf,pdfbox,apache-tika
来源: https://codeday.me/bug/20190612/1225934.html