Как индексировать PDF-файлы и искать ключевые слова?
У меня есть куча PDF-файлов (несколько 100). У них нет ни правильной структуры, ни определенных полей. Все они имеют много текста.
что я пытаюсь сделать:
индексировать PDF-файлы и искать некоторые ключевые слова по индексу. Я заинтересован в поиске, если это конкретное ключевое слово находится в PDF doc, и если это так, я хочу строку, где ключевое слово найдено. Если бы я искал "Google" в PDF-документе, который имеет этот термин, я бы как увидеть "Google-отличная поисковая система", которая является строкой в PDF.
как я решил сделать :
либо используйте SOLR или Whoosh, но SOLR хорошо подходит для встроенной поддержки PDF. Я предпочитаю код на Python, а Sunburst-это оболочка на SOLR, которая мне нравится. Пример/Пример проекта SOLR имеет некоторый файл схемы на основе сравнения цен. Теперь я не уверен, могу ли я использовать SOLR для ответа на мою проблему.
Что вы предлагаете? Любой вход много оцененный.
3 ответов
Я думаю, Solr соответствует вашим потребностям.
функция "подсветка" - это то, что вы ищете.. Для этого вы должны индексировать и хранить документы в lucene index.
функция подсветки возвращает обрезанный текст, в котором отмечен искомый текст.
посмотрите на это:http://wiki.apache.org/solr/HighlightingParameters
другое автономное / автономное решение:
- https://github.com/WolfgangFahl/pdfindexer Он использует PDFBox и Apache Lucene и создаст файл индекса HTML со ссылками на страницы в файле PDF для каждого найденного ключевого слова.
Я однажды решил это, преобразовав PDF-файлы в текст с помощью утилит как pdftotext
(pdftohtml
также будет работать, я думаю), генерировать " кэш " некоторых видов. Затем, используя некоторые grep
Я искал в кэше текстовых файлов ключевые слова.
Это немного отличается от вашего предлагаемого решения, но я могу себе представить, что вы можете назвать это из Python.