gpt4 book ai didi

parsing - PDF表格数据

转载 作者:行者123 更新时间:2023-12-04 05:17:55 25 4
gpt4 key购买 nike

我有一个关于从 pdf 文件中提取文本、精确表格数据的一般问题。

pdf 查看器如何能够阅读和显示表格?为什么我们不能以同样的方式获得必要的列信息?

我现在围绕这个搜索了一个星期,主要是使用 pdftoxml 卡住了 token 坐标和太宽的表格单元格(使得准确的中间空表格单元格识别变得不可能)。

我通过对文本进行正则表达式来为我的一堆 pdf 文件解决这个问题(顺便说一句,如果某些行间距离被忽略并“粘贴在一起”,那么逐行非常成功),但这当然只是一个实例解决方案。

这让我头疼。 pdf 查看器为单元格绘制线条并知道单元格的开始和结束位置,但我们无法从 pdf 源代码中读取它。这怎么可能?他们知道什么是我们无法推断的?

最佳答案

您的误解是将列作为列存储在 PDF 文件中。事实并非如此。 PDF 查看器无法理解表格、列、段落、文本行或单词。

PDF 是作为页面描述语言创建的,它非常擅长在许多不同的设备上复制完全相同的页面。因为这是它的目标,它不关心结构,而您所指的就是所有结构。

PDF 绘制文本的方式非常非常简单。页面上的说明将是这样的:

  • 设置此字体
  • 转到页面上的这一点
  • 渲染这些字符。
  • 转到页面上的另一个点
  • 渲染更多字符。

  • 虽然也可以将一些结构信息与这些说明一起存储在 PDF 中,但通常不会这样做,无论如何它都是以 PDF 格式实现的。

    当您查看上面的(伪)说明时,很容易理解表格的绘制方式。文件中只会有移动到一个单元格的特定位置并绘制文本的说明。然后更多的指令移动到另一个单元格并绘制该文本。

    如果您想反转操作并从 PDF 页面中提取结构化信息,则必须“重新发明”结构信息。这意味着诸如找出哪些文本在同一基线上并因此可能属于同一行之类的事情。哪个文本在该基线上足够接近,因此它可能是单词或列......等等......

    正如您所想的那样,这根本不是一件容易的事!

    关于parsing - PDF表格数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14001973/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com