python 实现提取某个索引中某个时间段的数据方法

yipeiwu_com6年前Python基础

如下所示:

from elasticsearch import Elasticsearch
import datetime
import time
import dateutil.parser

class App(object):
 def __init__(self):
  pass

 def _es_conn(self):
  es = Elasticsearch()
  return es

 def get_data(self, day,start,end):
  index_ = "gather-apk-20180330"
  query_dsl = {
   "size": 10000,
   "query": {
    "bool": {
     "must": [
      {"range": {
       "receiveTime": {
        "gte": start.strftime('%Y-%m-%d %H:%M:%S'),
        "lte": end.strftime('%Y-%m-%d %H:%M:%S'),
        "format": "yyyy-MM-dd HH:mm:SS",
        "time_zone": "+08:00"
       }
      }},
      {
       "term": {
        "obd2_localnet_id": {
         "value": "101000"
        }
       }
      },
      {
       "term": {
        "obd2_substation_name": {
         "value": "石羊支局"
        }
       }
      }
     ]
    }
   },
   "_source": ["mac", "iptvAccount", "obd2_substation_name", "obd2_company_name", "obd2_grid_name",
      "receiveTime","streamBreak","kaNum"]
  }
  rs = self._es_conn().search(
   index=index_,
   body=query_dsl
  )
  

if __name__ == '__main__':
 day = datetime.datetime.now()
 # the_day = day.strftime('%Y%m%d')
 start = datetime.datetime.strptime('20180330 09:53:00','%Y%m%d %H:%M:%S')
 end = datetime.datetime.strptime('20180330 15:44:00','%Y%m%d %H:%M:%S')
 app = App()
 app.get_data(day,start,end)

以上这篇python 实现提取某个索引中某个时间段的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python的条件语句与运算符优先级详解

Python的条件语句与运算符优先级详解

Python 条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: Python程序...

python函数参数*args**kwargs用法实例

python函数参数*args**kwargs用法实例

复制代码 代码如下:#coding=utf8__author__ = 'Administrator' # 当函数的参数不确定时,可以使用*args和**kwargs。*args没有key...

python画微信表情符的实例代码

python画微信表情符的实例代码

#@project = facepalm #@file = main #@author = Maoliang Ran #@create_time = 2018/8/28 22:...

利用打码兔和超人打码自封装的打码类分享

自封装的打码类, windows下建议用打码兔(调用的官方dll),linux下建议超人打码(http api) 复制代码 代码如下:# coding:utf-8from ctypes...

用python求一个数组的和与平均值的实现方法

如下所示: # coding = GBK a =[1,2,3,4,5] sum=0 b = len(a) print("这个数组的长度为:",b) for i in a:...