从扫描的 PDF 中提取文本



我的问题是我有一堆PDF文件,我想将它们转换为文本文件。其中一些是纯PDF文件,而另一些则内部有扫描页面。我正在用python编写一个程序,所以我正在使用pdftotext将它们转换为TXT。

我正在使用以下命令

filename = glob.glob(src)  //src is my directory with my files 
    for file in filename:
        subprocess.call(["pdftotext", file])

我想问的是,是否有办法在转换之前检查扫描的页面,以便我可以使用带有pdftotext的ghostscript命令来操作它们。现在,我有一个主动权来检查.txt文件的大小,如果它低于该撤销权,我正在使用 ghostscript 命令来操作它们。

问题在于,对于在 90 页中扫描了 50 或 60 个的大文件,即使使用 pdftotext,文件的大小也始终高于主动权限。

一个"纯"的PDF文件中可以包含图像。

没有简单的方法可以判断PDF文件是否是扫描页面。我认为,您最好的选择是分析页面内容流,看看它们是否只包含图像(一些扫描仪将单个扫描页面分解为多个图像)。您可以假设它们是扫描的页面,无论如何您都不会使用 Ghostscript 从中获得任何文本。

另一种方法是将pdf_info.ps程序用于Ghostscript,并让它列出字体用途。没有字体 == 没有文本,尽管可能存在字体但仍然没有文本。此外,我认为这不适用于逐页。

相关内容

  • 没有找到相关文章

最新更新