gpt4 book ai didi

python - 使用 pyes 构建 ElasticSearch 搜索

转载 作者:行者123 更新时间:2023-11-28 19:26:02 25 4
gpt4 key购买 nike

此示例代码的目标是弄清楚如何创建由多个过滤器和查询组成的查询。

下面的例子没有按预期工作。

  1. 我希望能够只对包含特定“键”的文档执行搜索。这就是我试图通过 ExistsFilter 达到的目的,但在启用时我没有得到任何结果。

有什么建议可以解决这个问题吗?

#!/usr/bin/python

import pyes
conn = pyes.ES('sandbox:9200')
conn.index('{"test":{"field1":"value1","field2":"value2"}}','2012.9.23','test')

filter = pyes.filters.BoolFilter()
filter.add_must(pyes.filters.LimitFilter(1))
filter.add_must(pyes.filters.ExistsFilter('test')) #uncommenting this line returns the documents

query = pyes.query.BoolQuery()
query.add_must(pyes.query.TextQuery('test.field1','value1'))
query.add_must(pyes.query.TextQuery('test.field2','value2'))

search = pyes.query.FilteredQuery(query, filter)

for reference in conn.search(query=search,indices=['2012.9.23']):
print reference

最佳答案

我不使用 pyes(也不使用 python)。但是,我在这里看到的是,如果我与 ExistsFilter 进行比较,ExistsFilter 中似乎缺少一些信息。文档:

{
"constant_score" : {
"filter" : {
"exists" : { "field" : "user" }
}
}
}

会不会是你的问题?

关于python - 使用 pyes 构建 ElasticSearch 搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12561837/

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