Python - одностраничный парсер Apache Tika - PullRequest
0 голосов
/ 01 ноября 2018

Мне было интересно, есть ли способ использовать Tika / Python только для анализа первой страницы или извлечения метаданных только с первой страницы? Прямо сейчас, когда я передаю PDF, он анализирует каждую страницу. Я посмотрел, что эта ссылка: Можно ли извлечь текст за страницей для файлов Word / PDF, используя Apache Tika? Тем не менее, эта ссылка объясняет больше в Java, с которым я не знаком. Я надеялся, что может быть решение для Python для этого? Спасибо!

from tika import parser
# running: java -jar tika-server1.18.jar before executing code below. 
parsedPDF = parser.from_file('C:\\path\\to\\dir\\sample.pdf')

fulltext = parsedPDF['content']

metadata_dict = parsedPDF['metadata']
title = metadata_dict['title']
author = metadata_dict['Author'] # capturing all the names from lets say 15 pages. Just want it to capture from first page 
pages = metadata_dict['xmpTPg:NPages']

1 Ответ

0 голосов
/ 07 ноября 2018

@ Комментируя Gagravarr относительно XHTML, я обнаружил, что при чтении файла у Тики был xmlContent анализ. Я использовал его для захвата формата xml и использовал regex для его захвата.

Это сработало для меня:

parsed_data_full = parser.from_file(file_name,xmlContent=True) 
parsed_data_full = parsed_data_full['content']

Существует начало и конец для каждого разделителя страниц, который начинается с "<div" и заканчивается "</div>" первым появлением. В основном написал небольшой код, чтобы захватить подстроки между 2 подстроками и сохранить в переменную в соответствии с моими конкретными требованиями.

...