【发布时间】:2018-07-24 14:46:00
【问题描述】:
我有一个 pdf 文件目录:document.01.pdf、document.02.pdf 等等。我正在运行 Solr 6.6.2。我跑了
solr create -c documents
创建一个名为documents 的核心。我想将 pdf 文件上传到 Solr 并让它索引它们包含的文本,而不仅仅是它们的元数据。
我知道提卡是 Tikka 的工作。我知道solr.extraction.ExtractingRequestHandler 的工作是给 Tikka 打电话。我的solarconfig.xml(这只是solr create 创建的默认值)包含以下部分:
<requestHandler name="/update/extract"
startup="lazy"
class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults">
<str name="lowernames">true</str>
<str name="fmap.meta">ignored_</str>
<str name="fmap.content">_text_</str>
</lst>
</requestHandler>
如果我跑步
post -c documents path-to-pdf-directory
我最终在索引中找到了包含有关 PDF 文件的元数据的条目和一个 id,它是文件的完整路径,但不是文件内容。我想要的是这些元数据字段加上一个名为 text 或 content 之类的附加字段,以包含 PDF 中的文本。
按照here 之类的示例,我也尝试了类似的命令
curl 'http://localhost:8983/solr/documents/update/extract?literal.id=doc1&commit=true' -F "myfile=@document.01.pdf"
但这做同样的事情。
我一直在 searching all over 获取有关如何执行此操作的文档,但我发现的所有内容都表明我做的一切都是正确的。
我该怎么做?这似乎是一种基本功能,以至于它并不明显的事实让我认为我误解了一些基本的东西。
【问题讨论】: