Пакетный экспорт PDF Свойства - PullRequest
0 голосов
/ 09 мая 2018

TL; DR

Я хочу взять каталог файлов, полный файлов PDF, и "экспортировать" их свойства, в частности номер страницы, в файл .CSV.


Исследования

Я обнаружил множество программ, которые позволяют мне пакетно экспортировать метаданные PDF-файла, но обычно это связано с исходной информацией ине доступная информация о самом PDF.


Подробности

Мне нужны номера страниц, чтобы можно было определить порядок страниц.Я использую систему индексации, которая позволит двум сторонам находить документы и общаться с ними.Я планирую иметь документ Excel с заголовками документов и уникальными идентификаторами, которые должны соответствовать номерам последовательных битов в PDF-файлах.

Я не возражаю против написания кода или творческого подхода к этому, но это должно быть что-то, что может быть сделано в пакетном режиме, так как файлов много.

Заранее спасибо за любыепомощь, которую вы можете предоставить.

1 Ответ

0 голосов
/ 10 мая 2018

Вы сказали, что не против написания кода, поэтому вот небольшой скрипт на Python, который делает то, что вы хотите (насколько я понимаю).

#!python3.6
import csv
import os

import fitz  # http://pymupdf.readthedocs.io/en/latest/


def main():
    """ Place script in same directory as PDFs. """
    script_dir = os.path.dirname(os.path.abspath(__file__))
    csv_filename = os.path.join(script_dir, 'pdf_information.csv')
    with open(csv_filename, mode='w', newline='') as f:
        writer = csv.writer(f)
        writer.writerow([
            'Filename',
            'Page Count',
        ])
        for basename in os.listdir(script_dir):
            if basename.upper().endswith('.PDF'):
                filename = os.path.join(script_dir, basename)
                pdf = fitz.open(filename)
                writer.writerow([
                    basename,
                    pdf.pageCount,
                ])
                pdf.close()


if __name__ == '__main__':
    main()
...