我有一个python脚本,应该打印存储在elasticsearch中的我的JSON文件中的所有人的ID。但我只得到十个结果(截断),因为我知道默认情况下只显示10个结果。
from elasticsearch import Elasticsearch
import sys
es = Elasticsearch()
res = es.search(index="my_docs", body={"query": {"match_all": {}}})
print("%d documents found" % res['hits']['total'])
for doc in res['hits']['hits']:
print (" Doc ID: %s" % (doc['_id']))
它说找到5000份文件,但只返回10个ID。
获取所有文件的方法是什么?我在Elasticsearch的收藏中打印了Doc ID?
答案 0 :(得分:1)
您需要告诉ES返回十个以上的结果(这是默认值):
body={"query": {"match_all": {}}, 'results': 1000}
对于非常大量的结果,您需要以分页方式获得所有结果; ES提供了执行此操作的方法。
答案 1 :(得分:0)