美文网首页
ES数据导出至EXCEL

ES数据导出至EXCEL

作者: 左轮Lee | 来源:发表于2021-11-23 11:22 被阅读0次

ES Version: 7.10.0

Excel保存格式类似Chrome插件elasticvue的查询展示格式,脚本如下:
需安装两个包 pip install elasticsearch pandas

from elasticsearch import Elasticsearch
import pandas as pd

def ExportEsData(excel_path):
    # 连接es集群
    es = Elasticsearch(
        ["192.168.2.110"],
        http_auth=('elastic', 'xxxxxxx'),
        port=9200)

    # 指定数据查询DSL
    body = {  
            "query": {
                "match_all": {}
            },
            "sort": [
                {
                "seq": {
                    "order": "desc"
                }
                }
            ],
            "from":0,
            "size": 200
            }

    # 获取数据
    query = es.search(index='wechat',
                      doc_type='_doc',
                      size=200,
                      body=body)

    results = query['hits']['hits']

    # 将 _source 对应的value提出来保存至列表
    list_dic = []
    for dic in results:
        dic.update(dic['_source'])
        del dic['_source']
        list_dic.append(dic)
    
    # 保存至excel
    EsData = pd.DataFrame(list_dic, index=[i for i in range(len(list_dic))])
    EsData.to_excel(excel_path, index=False)

if __name__ == "__main__":
    excel_path='/tmp/b.xlsx'
    ExportEsData(excel_path)

Excel 保存格式如下: image.png

相关文章

网友评论

      本文标题:ES数据导出至EXCEL

      本文链接:https://www.haomeiwen.com/subject/yuhwtrtx.html