我正在寻找一个非常快速,轻量级的Python库来读取PDF元数据。我不需要任何写入功能。如果仅加载元数据信息,而不是整个文件,则会更好。快速Python PDF元数据阅读器
我意识到像Python这样的解释性语言并不是速度的最佳选择,但是由于这个解决方案需要跨平台并且与现有的Python应用程序一起工作,所以似乎没有多少选择。
我检出了pyPdf和其他一些库,但理想情况是寻找更轻更快的东西,适合一次处理数以万计的文件。
谢谢。
我正在寻找一个非常快速,轻量级的Python库来读取PDF元数据。我不需要任何写入功能。如果仅加载元数据信息,而不是整个文件,则会更好。快速Python PDF元数据阅读器
我意识到像Python这样的解释性语言并不是速度的最佳选择,但是由于这个解决方案需要跨平台并且与现有的Python应用程序一起工作,所以似乎没有多少选择。
我检出了pyPdf和其他一些库,但理想情况是寻找更轻更快的东西,适合一次处理数以万计的文件。
谢谢。
你见过this对类似问题的回答?它建议使用fopen
并手动解析元数据。如果元数据是你需要的,你可以自己解析它,并尽可能快地完成。
Here's something I just put together,建立在Python PDFMiner库之上。您可以使用它提取“Info”和XMP类型的元数据。
这是一个有点生,不过这应该让你的元数据
f = open('file.pdf', 'r')
pdfdata=f.read()
metas=re.findall('<</Metadata(.*?)>>',pdfdata)
pdfrw可以读取的元数据,而不
阅读
解析整个文件。 (免责声明:我是pdfrw的作者。)例如:
>>> from pdfrw import PdfReader
>>> PdfReader('pdf_reference_1-7.pdf').Info
{'/Title': '(PDF Reference, version 1.7)',
'/CreationDate': '(D:20061017081020Z)',
'/Producer': '(Acrobat Distiller 7.0.5 \\(Windows\\))',
'/Creator': '(FrameMaker 7.2)',
'/ModDate': "(D:20061118211043-02'30')",
'/Author': '(Adobe Systems Incorporated)',
'/Subject': '(Adobe Portable Document Format \\(PDF\\))'}
什么,如果有的话,使pyPdf太重?如果您只需要编写,请不要导入PdfWriter。 – bdd 2010-12-09 23:05:25
lib本身很轻,但它读取整个文件。这意味着处理较大的PDF需要更长的时间,对于像手册这样的巨大文件来说,它非常缓慢。 – 2010-12-10 09:14:04