1

我与 solr 合作提取 pdf 文件并将其编入索引。现在我可以使用以下代码提取它:

private static void IndexPDFFile(ISolrOperations<Article> solr)
{
    string filecontent = null;

    using (var file = File.OpenRead(@"C:\\cookbook.pdf"))
    {
        var response = solr.Extract(new ExtractParameters(file, "abcd1")
        {
            ExtractOnly = true,
            ExtractFormat = ExtractFormat.Text,
        });

        filecontent = response.Content;
    }
    solr.Commit();
}

但是当我在浏览器中使用以下命令检查 solr 时,什么也没有出现:

http://berserkerpc:444/solr/select/?q=text:solr

或者

http://berserkerpc:444/solr/select/?q=author:admin

pdf 文件的内容是:这是一本 Solr 食谱......字段作者应该包含一些带有管理员的内容。

这里的输出:

    <response><lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
<lst name="params"><str name="q">text:Solr</str></lst></lst><result name="response" numFound="0" start="0"/></response>

对这个问题有什么建议吗??

谢谢,特罗

4

1 回答 1

1

这是因为您ExtractOnly=trueExtractParameters. 这是源代码中对 ExtractOnly 参数的注释。

    /// <summary>
    /// If true, return the extracted content from Tika without indexing the document. 
    /// This literally includes the extracted XHTML as a string in the response. 
    /// </summary>
    public bool ExtractOnly { get; set; }

如果要索引提取的内容,请不要将此参数设置为 true。

于 2013-03-29T12:05:28.263 回答