在Python中提取PDF文件的文本和表格

问题描述 投票:0回答:3

我正在寻找一种从 PDF 文件中提取文本和表格的解决方案。虽然某些软件包适合提取文本,但它们不足以提取表格。

  • 其次,如果页面中存在表格,如何提取表格? pdfplumber 可以使用 extract_text() 和 extract_table() 注释提取文本和表格。它无法为某些文档保留单词之间的空格。当我们有双列 pdf 文件时,它也会失败。

  • Tabula 是另一种选择,但正如我从他们的网站https://github.com/tabulapdf/tabula 看到的那样,它很好用。我的最终问题是,从给定单列或双列页面的 pdf 文件中提取内容、文本和表格的最佳实践是什么。

python pdf ocr pypdf pdfplumber
3个回答
2
投票

您可以尝试按照this指南从PDF中提取文本、表格和图像。它使用

PyPDF
tabula-py
来完成工作,但我不确定您是否可以按顺序提取它,因为您正在对同一 pdf 文件进行“多次”提取。


1
投票

答案取决于问题是一般性的还是特定于单一表格的。您的方法对于一般情况来说是合理的,但会有变化。如果您有一个 pdf 表单,它是在每次迭代时使用不同数据创建的单个表单或报告,请考虑将表单从 pdf 转换为 postscript,然后查看是否可以解析 postscript。

有两个实用程序可以执行此操作:pdf2ps 和 pdftops 分别尝试。如果您了解一些后记,这种方法可能会有所帮助。幸运的话,所需的字段可能是简单的文本字符串。值得一试。


-1
投票

Unstructed 提供了一个全面的 Python 库,可以提取 PDF(以及大多数其他文件类型)的文本、图像和表格。

他们有几种不同的策略模型,具体取决于您想要优化的粒度、速度和成本。

© www.soinside.com 2019 - 2024. All rights reserved.