繁体   English   中英

如何在Solr查询中排除从PDF索引的文本

[英]How to exclude text indexed from PDF in solr query

我有一个从PDF文件目录生成的Solr索引,并具有与PDF文件本身相关的元数据字段。 不过,我仍想为我的用户提供一个选项,以在查询中排除从PDF内索引的任何文本。 这样一来,查询结果将基于元数据字段,而不会受到pdf文件中大量文本的影响。

我想过也许有两个索引(核心)-一个带有索引的pdf文件,另一个没有。

还有另一种方法吗?

听起来您正在对默认字段进行常规搜索。 这意味着您有很多copyField指令(或只有一个copyField *->文本),其中包括PDF内容字段。

您可以创建第二个目标,并将除了PDF内容字段之外的所有内容都复制到该字段中。 这样,用户可以搜索或搜索另一个组合字段。

但是,请记住,这将根据目标字段的分析链来解析所有内容。 因此,带有源字段列表的eDisMax可能是一种更好的方法。 而且,请记住,您可以使用多个请求处理程序(例如“ select”)并在那里定义不同的默认参数。 这通常会使客户端代码更容易些。

您不需要使用2个单独的索引。 您可以使用edismax解析器并在查询时指定qf参数。 这将有助于确定要搜索的字段。

您可以查看字段别名

如果您有3个索引字段

  • pdf元
  • pdf文本

然后您可以创建两个字段别名

  • 快速搜索:pdfmeta
  • Fullsearch:pdfmeta,pdftext

在qf上使用字段别名的一个优势是,如果您的用户具有q = quicksearch:value之类的书签,则可以更改别名以进行快速搜索,而不会影响用户的书签。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM