Я использую Solr 6.2.1 и ExtractingRequestHandler (уже включенный в Solr 6.2.1) для индексирования pdf и текстовых документов. Все документы (pdf и word) индексируются метаданными (название, дата, cp_revision, compagny, ...), но поле содержимого всегда пустое.Solr ExtractingRequestHandler дает пустое поле для заполнения
В соответствии с documentation у меня должно быть поле для непустого содержимого: «Тика добавляет весь извлеченный текст в поле содержимого».
Кто-нибудь знает, почему поле содержимого пуст? Согласно этому post answer, возможно, потому, что я открываю свой файл в не двоичном режиме, но как это сделать в двоичном режиме?
Это мой solrconfig.xml файл:
<lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />
...
<requestHandler name="/update/extract"
startup="lazy"
class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults">
<str name="xpath">/xhtml:html/xhtml:body/descendant:node()</str>
<str name="capture">content</str>
<str name="fmap.meta">attr_meta_</str>
<str name="uprefix">attr_</str>
<str name="lowernames">true</str>
</lst>
</requestHandler>
Я тестировал пример файлов, и он тоже не работает. Что я должен изменить в параметре xpath? Это оригинальный файл solrconfig.xml, я ничего не изменил. –
Если в примере с исходными файлами нет содержимого, тогда ваш PDF, скорее всего, просто изображения без содержимого. Но это должно работать для MSWord? В противном случае отходите от Solr и тестируйте его непосредственно с отдельно загруженной Tika (что и делает Solr под крышками). –