在 MAC OS X 中使用 PDF 元数据重命名 PDF

在 MAC OS X 中使用 PDF 元数据重命名 PDF

我从 JStor 下载了一些 PDF。这些 PDF 的文件名都是无用的数字,但元数据中通常至少会有一个标题(如果不是作者的话)。

如何批量重命名多个 PDF,以便当元数据中同时指定“作者”和“标题”时,搜索元数据并重命名文件“作者-标题”?如果缺少一个,我希望它只重命名文件以反映存在的元数据,将文件命名为“作者”或“标题”。如果没有元数据,我不希望进行任何更改。

答案1

免费书目软件,例如

可以为您做到这一点。

  • 我认为比比桌(它不是独立于平台的,但是更像 mac)也可以做到这一点。

答案2

这是一种可能的方法,它涉及编写一个不太糟糕的脚本。

使用 JHOVE 从文件中提取元数据并将其写入 XML 文件。使用 XPath 表达式提取以下路径:

jhove/repInfo/properties/属性/属性/属性/属性/值/值

其中路径中的三个属性元素包含 <name> 元素,其值分别为“PDFMetadata”、“Info”和“Title”以获取标题,以及“PDFMetadata”、“Info”和“Author”以获取作者。然后,您可以以编程方式使用它们来创建新的文件名。

这是一个粗略的大纲,但我认为这个想法是可行的。

全面披露:我为 JHOVE 编写了大部分代码。

答案3

在 OS X 上,您可以使用分布式文件系统查询 Spotlight 数据库以获取其提取并索引的文件的属性:

$ mdls -name kMDItemTitle A-Self-Referential-Story.pdf 
kMDItemTitle = "This Is the Title of This Story, Which Is Also Found Several Times in the Story Itself"
$ mdls -name kMDItemAuthors A-Self-Referential-Story.pdf 
kMDItemAuthors = (
    "David Moser"
)

答案4

我最近刚刚创建了一个应用程序来批量重命名科学论文,这对于重命名论文非常有用,可以使论文在文件名方面更有条理。

该应用程序通过从元数据中获取标题来工作。如果没有元数据,它将智能地从 pdf 中获取正确的标题。然后可以对标题应用其他高级选项,例如缩短为缩写、添加日期等。

演示视频: http://www.youtube.com/watch?feature=player_embedded&v=R01bvA9rhiQ

可在 App Store 下载 https://itunes.apple.com/app/pdf-paper-renamer/id591593578?mt=12

相关内容