Как получить доступ к информации в PDF IndirectObject? - PullRequest
0 голосов
/ 04 мая 2019

Я работал над простой программой на Python, которая использует все аэропорты в канадском GPH 205 (http://products.navcanada.ca/e-CFS3-Subscription.html)), которая затем помещает их в CSV, содержащий имя, идентификатор и широту и долготу. Моя проблема что всякий раз, когда я пытаюсь получить текстовые данные со страницы, все данные на странице, сохраненные для названия аэропорта, сохраняются в IndirectObjects.

Например, первый аэропорт - Абботсфорд, и когда страница перетаскивается, у меня появляется доступ к показанным объектам IndirectObjects. Я знаю, что IndirectObject (149339, 0), но как мне получить к нему доступ?

Я уже пытался решить эту проблему с помощью OCR после растеризации страниц, но есть более 1000 страниц для форматирования, а также много карт, которые приводят в замешательство Tesseract.

from PyPDF2 import PdfFileReader;

PDFFile = ('GPH205.pdf');
readPDF = PdfFileReader(PDFFile);
page = readPDF.getPage(100);
print(page);

print(page.extractText());

Возвращает

{'/B': [IndirectObject(149339, 0)], '/Contents': IndirectObject(397, 0), ... }

BCCAB5BCCSM7ABBOTSFORD (REGIONAL HOSP...)

Обратите внимание, что пока он отображает название аэропорта (Абботсфорд), это единственная информация, которая возвращается. Я хотел бы узнать, как получить доступ к информации внутри IndirectObject (149339, 0), чтобы узнать, ищу ли я это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...