Извлечение заголовков из файлов PDF? - PullRequest
14 голосов
/ 26 мая 2009

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

Ответы [ 4 ]

14 голосов
/ 26 мая 2009

Вы можете попробовать использовать pyPdf и в этом примере .

например:

from pyPdf import PdfFileWriter, PdfFileReader

def get_pdf_title(pdf_file_path):
    with open(pdf_file_path) as f:
        pdf_reader = PdfFileReader(f) 
        return pdf_reader.getDocumentInfo().title

title = get_pdf_title('/home/user/Desktop/my.pdf')
2 голосов
/ 26 мая 2009

Вы можете попробовать использовать iText с Jython

2 голосов
/ 26 мая 2009

Я бы, наверное, начал с Perl (видя, что это всегда первое, чего я достигну). Есть несколько модулей для работы с PDF . Если у вас есть последовательная структура, вы можете использовать регулярные выражения, чтобы поймать заголовки.

1 голос
/ 24 января 2018

Предполагая, что все эти документы принадлежат arXiv, вы могли бы вместо этого извлечь идентификатор arXiv (я бы предположил, что поиск «arXiv:» в тексте PDF будет последовательно показывать идентификатор как первое попадание).

Как только у вас есть ссылочный номер arXiv (и вы сделали pip install arxiv), вы можете получить заголовок, используя

paper_ref = '1501.00730'
arxiv.query(id_list=[paper_ref])[0].title
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...