2016-11-16 12 views
0

Я пытаюсь искать текстовые документы, используя Solr и Tika. Все работает отлично для .docx, .pptx, .csv, .xlsx, .. но когда дело доходит до .pdf-файлов, оно возвращает пустой контент. Я не могу понять, где проблема!Индексирование арабских PDF-файлов с помощью Solr

+1

Как вы индексируете? – vinod

+0

Я использовал ExtractRequestHandler в файле solrconfig, а затем я использовал команду curl для индексации pdf-файла. Он получает все правильные метаданные, но содержимое выглядит так: attr_filecontent ": [" \ n \ n \ n \ n \ n \ n \ n \ n \ n "] – LHAD

ответ

0

Если вы используете post.jar для индексных файлов Использование -Dauto

Пример:

java -Dauto -Dc=collection_name -jar post.jar pdf_file.pdf 

Использования -Dauto что мы можем просканировать весь формат документ, который поддерживает ТИК. т.е. TXT, DOC, DOCX, PDF, XML, HTML и т.д.

добавить этот арабский класс фильтра к определению поля

<fieldType name="text_general_arabic" class="solr.TextField" positionIncrementGap="100"> 
    <analyzer type="index"> 
    <tokenizer class="solr.StandardTokenizerFactory"/> 
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="arabic_stopwords.txt" enablePositionIncrements="true" /> 
    <filter class="solr.ArabicNormalizationFilterFactory"/> 
    <filter class="solr.ArabicStemFilterFactory"/>  
    </analyzer> 
    <analyzer type="query"> 
    <tokenizer class="solr.StandardTokenizerFactory"/> 
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="arabic_stopwords.txt" enablePositionIncrements="true" /> 
    <filter class="solr.ArabicNormalizationFilterFactory"/> 
    <filter class="solr.ArabicStemFilterFactory"/>  
    </analyzer> 
</fieldType> 
+0

Я пробовал, но получаю тот же результат с файлами в формате pdf – LHAD

+0

забыл сообщить, вам нужно включить в файл схемы арабские фильтры для определения поля – vinod

+0

Я включил в файл схемы арабские фильтры. У меня такая же проблема даже с английскими файлами PDF! – LHAD

0

Это трудно правильно разобрать PDF, поскольку PDF может содержать внутри текста или изображений. Мы создали инструмент для легкого поиска содержимого любого файла. Основываясь на нашем опыте:

  1. Анализировать PDF с PDFbox первой
  2. Если шаг 1 возврат ноль -> сделать OCR

Полное описание процесса вы можете найти в нашем блоге https://blog.ambar.cloud/ingest-attachment-plugin-for-elasticsearch-should-you-use-it/

Надеюсь, что это поможет.

P.s. наше интегрированное решение https://github.com/RD17/ambar