美文网首页
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