在 Python 中从 PDF 提取表格
Contents
[
Hide
]
从 PDF 中提取表格
从 PDF 中提取表格对于报告、数据迁移和分析工作流非常有用。使用 Aspose.PDF for Python via .NET,您可以高效地检测并读取现有 PDF 文档中的表格内容。
此代码片段打开一个现有的 PDF 文件,扫描每一页的表格,并提取单元格文本内容。它使用 TableAbsorber 检测表格,然后遍历行和单元格以打印提取的文本。
- 将 PDF 加载到 ap.Document 对象中。
- 遍历页面。
- 创建一个 TableAbsorber 对象。
- 遍历表格。
- 遍历行和单元格。
- 提取并打印单元格中的文本。
此示例读取 PDF,查找所有表格,并逐行打印单元格内容。
import aspose.pdf as ap
from os import path
import sys
def extract(infile: str) -> None:
"""Extract and print all tables from a PDF file."""
document = ap.Document(infile)
for page in document.pages:
absorber = ap.text.TableAbsorber()
absorber.visit(page)
for table in absorber.table_list:
print("Table ----")
for row in table.row_list:
print("Row:")
row_txt = ""
for cell in row.cell_list:
cell_txt = ""
text_fragment_collection = cell.text_fragments
for fragment in text_fragment_collection:
for seg in fragment.segments:
cell_txt += seg.text
row_txt += " | "
row_txt += cell_txt
print(row_txt)