gpt4 book ai didi

url - 在 Solr 中索引和查询 URL

转载 作者:行者123 更新时间:2023-12-04 12:59:49 26 4
gpt4 key购买 nike

我有一个要搜索的 URL 数据库。因为 URL 并不总是相同的(可能有也可能没有 www),我正在寻找索引和查询 url 的正确方法。
我尝试了几件事,我认为我很接近但不确定为什么它不起作用:

这是我的自定义字段类型:

 <fieldType name="customUrlType" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0" preserveOriginal="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0" preserveOriginal="0"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>

例如:

http://www.twitter.com/AndersonCooper编入索引时,将在不同位置显示以下单词:http、www、twitter、com、andersoncooper

如果我只搜索 twitter.com/andersoncooper,我希望这个查询匹配被索引的记录,这就是为什么我也使用 WDF 来拆分搜索查询,
但是搜索查询最终是这样的:

myfield:("twitter com andersoncooper") 当真的希望它匹配具有以下所有单独单词的所有记录时:twitter com andersoncooper

我应该使用不同的查询过滤器或标记器吗?

最佳答案

如果我从你的问题中理解了这个说法

myfield:("twitter com andersoncooper") when really want it to match all records that have all of the following separate words: twitter com andersoncooper



您正在尝试编写一个与两者都匹配的查询:
http://www.twitter.com/AndersonCooper


http://www.andersoncooper.com/socialmedia/twitter

(两个链接都包含 所有 的 token ),但不匹配
http://www.facebook.com/AndersonCooper 

或者
http://www.twitter.com/AliceCooper

如果这是正确的,您现有的配置应该可以正常工作。假设您正在使用标准查询解析器并且您通过 curl 或其他一些基于 url 的机制进行查询,您需要查询参数如下所示:
&q=myField:andersoncooper AND myField:twitter AND myField:com

可能让您感到困惑的问题之一是默认查询运算符(在查询中的术语之间)是“OR”,这就是必须在上面明确指定 AND 的原因。或者为了节省一些空间,您可以将默认查询运算符更改为“AND”,如下所示:
&q.op=AND&q=myField:(andersoncooper twitter com)

关于url - 在 Solr 中索引和查询 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4684069/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com