PDF 解析包不能解析这个 PDF 的什么?

What can't this PDF be parsed by PDF parsing packages?

提问人:Hunter Hodnett 提问时间:5/4/2023 最后编辑:Dave NewtonHunter Hodnett 更新时间:5/5/2023 访问量:82

问:

我有一个 PDF 文档,我正在尝试将其解析为文本。该文件是非营利性财务文件公共领域的一部分,可以安全共享。

Google 存储空间上的示例页面

我尝试使用名为 pdf-parse 的通用 NPM 包解析文档,但它不输出任何文本。

JavaScript 代码:

const fs = require('fs');
const pdf = require('pdf-parse');

let dataBuffer = fs.readFileSync('./sample-one-page.pdf');

pdf(dataBuffer).then(function(data) {
    console.log(data.numpages);
    console.log(data.numrender);
    console.log(data.info);
    console.log(data.metadata); 
    console.log(data.version);
    console.log(data.text); 
});

该脚本会准确检测页数和所有其他元数据,但不会分析文本。运行此脚本的输出如下所示。

1
1
{
  PDFFormatVersion: '1.3',
  IsAcroFormPresent: false,
  IsXFAPresent: false,
  Title: 'PDF TIFF Wrapper',
  Author: 'Awesome Donald',
  Creator: 'ServiceFileCopy',
  Producer: 'macOS Version 13.3.1 (Build 22E261) Quartz PDFContext',
  CreationDate: "D:20230504152855Z00'00'",
  ModDate: "D:20230504152855Z00'00'"
}
null
1.10.100

我已经验证了该脚本适用于其他 PDF 文档,并且我还使用 Python 库复制了该问题,用于 PDF 解析(https://pypi.org/project/pypdf/)。

此文档是否有阻止文本提取的内容?

节点 .js PDF 解析

评论

5赞 Dave Newton 5/4/2023
“标题:'PDF TIFF Wrapper'”是您的线索(或只是放大)。
0赞 Hunter Hodnett 5/5/2023
啊,我明白了,所以 OCR 是唯一真正的解析途径

答:

-1赞 Hunter Hodnett 5/5/2023 #1

它只是围绕 TIFF 图像的 PDF 包装器。直到戴夫指出来,我才意识到这一点。