2016-07-21 9 views
1

Я в настоящее время кодирую в python и сумел использовать pdftotext, чтобы извлечь текст из pdf.После использования pdftotext: найдите страницу строки из txt

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

Однако, найдя позицию слов, я хотел бы иметь возможность обратиться к первоначальному pdf. В деталях меня интересует страница и, возможно, строка (если PDF поддерживает такую ​​структуру), где эти слова расположены.

Одна из моих идей - это сделать этот процесс для каждой страницы pdf, поэтому, когда я нахожу эти слова, я знаю, на какой странице это было. Но это имеет большой недостаток, что иногда разрывы страниц не обязательно естественны. Значит, я потерял бы способность находить слова, если они, к сожалению, разделены разрывом страницы.

У вас есть идеи, как это сделать более сложным образом?

ответ

0

Вам понадобится более сложная библиотека, чем та, которую вы используете. Datalogics PDF Java Toolkit имеет несколько классов, которые могут извлекать текст из файла PDF. Тот, который вы используете, зависит от того, что вы хотите сделать с текстом после извлечения. ReadOrderTextExtractor создаст список списков, которые позволят вам извлечь текст и изучить содержание параграфов, предложений в этих параграфах и слов в этом предложении. Вы не только сможете рассказать расстояние между словами, но и то, являются ли они одним и тем же предложением или абзацем. Когда вы нашли объект Word, вы можете найти как его местоположение на странице, позволяя выделить, так и номер страницы, на которой он включен.