首页 > 编程 > Python > 正文

python 实现分页显示从es中获取的数据方法

2020-01-04 13:41:46
字体:
来源:转载
供稿:网友

注意:使用该方法,获取的数据总数目不能超过1万,否则出错

#在python3上运行from elasticsearch import Elasticsearchfrom urllib3.connectionpool import xrangedef get_page_data(result):  for hit in result['hits']['hits']:    print(hit)if __name__=='__main__':  es_host = "0.0.0.0"  port = 9200  timeout = 15000  index = "gather-v10"  es = Elasticsearch(hosts=es_host,port=port,timeout=timeout)  # gather-v10 总条数  count = es.count(index=index)['count']  # 每页显示条数  page_line = 2  #显示多少页  if (count%page_line==0):    page = (int)(count/page_line)  else:    page = (int)(count/page_line+1)  # 要生成很大的数字序列的时候,  # 用xrange会比range性能优很多,  # 因为不需要一上来就开辟一块很大的内存空间。  # x = range(0,10);type(x) 是一个列表  # x1 = xrange(0,10);type(x1) 是一个生成器 xrange(0,10)  for x in xrange(0,page):    rs = es.search(index=index,body={      "query":{        "match_all":{}      },      "from":x*page_line,      "size":page_line    })    get_page_data(rs)

以上这篇python 实现分页显示从es中获取的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表