首页 > 解决方案 > 如何在 python 中使用 elasticsearch 来搜索所有索引?

问题描述

这是我的代码:

def search(term):
    s = Search().filter('match_phrase', title=term)
    response = s.execute()
    return response

查看函数,标题是我的索引之一的名称。如何更改它,而不是只搜索一个索引,而是搜索我的所有索引?

标签: pythonelasticsearchsearch

解决方案


您可以通过枚举索引来做到这一点:

def search(term):
    s = Search(index=['index1', 'index2']).filter('match_phrase', title=term)
    response = s.execute()
    return response

或者像这样使用通配符

def search(term):
    s = Search(index='index*').filter('match_phrase', title=term)
    response = s.execute()
    return response

推荐阅读