我正在寻找一个可以帮助我找到重复 PDF 的实用程序。问题:我有 1000 多个 PDF 文件。有些是重复的。由于不同的文件名和文件大小的微小差异,它们不容易检测。是否有实用程序/算法/库可以帮助我找到重复项或向我显示非常相似(或差异程度)的文件?
5 回答
如果文件是由不同的工具创建的,它们可能看起来相同,但会产生非常不同的结果,因为它们的结构完全不同。我在https://blog.idrsolutions.com/2010/09/comparing-2-pdf-files/的博客文章中提出了一些建议
这个问题还没有以任何方式解决。我所做的是使用 fdupes http://premium.caribe.net/~adrian2/fdupes.html来查找精确的重复项。
但最重要的是,我使用的工作流程可以最大限度地减少重复。进入我系统的每个文档都被我写的这个 perl 脚本索引:http : //seegras.discordia.ch/Programs/fileindex 它将一些名称和它的 md5-sum 放入 ~/.fileindex.md5 现在我可以更改本地 PDF 文件的元数据或其他任何内容(并再次运行 fileindex),每当我不小心再次下载相同的文件时,我仍然会拥有原始文件的 md5-sum,从而可以检测它是否是重复的。
http://seegras.discordia.ch/Programs/上还有 exif-meta 和 exif-rename帮助设置 PDF 元数据和根据元数据重命名 PDF 文件;如果你正确地标记了所有文件,你最终会得到重复的文件名,这表明它们可能是不同文件中的同一个文档。
DiffPDF看起来可能对您有所帮助。
为每个文件创建一个 MD5 哈希并将其存储在数据库中。然后,相同的文件将彼此相邻排序,或者您可以快速搜索预先存在的密钥。
我记得有一个名为 pdf2txt 的 UNIX 实用程序(请参阅包poppler-utils
)。您可以尝试从文件中提取文本并制作文本差异。