首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用与elasticsearch-py匹配的查询时,有什么建议可以自定义分析器吗?

在使用与elasticsearch-py匹配的查询时,有什么建议可以自定义分析器吗?
EN

Stack Overflow用户
提问于 2019-08-17 15:51:15
回答 2查看 375关注 0票数 0

当使用与elasticsearch-py匹配的查询时,我无法应用自定义分析器。

我定制了一个名为custom_lowercase_stemmed的分析器,并使用es.indices.put_settings更新索引设置。

但是,当我搜索的时候,它找不到分析器。

我还查看了es.search中的参数es.search,但它返回了一个错误:

..unrecognized参数:分析器

我能在这里得到一些关于定制分析器的建议吗?谢谢!

代码语言:javascript
复制
query_body = {
     "query": {
         "match": {
            "employer":{
                "query": txt,
                "fuzziness": 'AUTO',
                "analyzer" : 'custom_lowercase_stemmed'
            }
        }
    }
}
es.search(index='hello',body=query_body)

以下是完整的错误:

代码语言:javascript
复制
RequestError: RequestError(400, 'search_phase_execution_exception', '[match] analyzer [custom_lowercase_stemmed] not found')
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-18 00:35:44

我认为你必须确保你有以下几点:

  • 让您的配置设置正确。在您的示例中,您应该在您的设置中使用"custom_lowercase_stemmed“字段作为分析器。你也可以定义你想要停止的单词。
  • 对于Python客户端,您必须将分析器作为方法.search()的参数发送。检查一下文档。但是,您可以尝试按原样运行查询。我对分析器没怎么玩过。

希望这能帮上忙!

票数 0
EN

Stack Overflow用户

发布于 2019-09-03 02:45:27

确保在映射时指定了分析器,并确保查询正确的字段。

对于您关于删除重复名称的匹配问题,在术语级别和短词中,模糊和通配符参数将是最合适的!

干杯,敏涵(:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57537770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档