python 获取utc时间转化为本地时间

本文介绍了三种在Python中将UTC时间转换为本地时间的方法。方法一通过`datetime`库直接加时区偏移;方法二使用`dateutil.parser`解析时间字符串并转换;方法三涉及两个UTC时间的差值计算。

python 获取utc时间转化为本地时间


方法一:
import datetime


timenow = (datetime.datetime.utcnow() + datetime.timedelta(hours=8)) #将utc时间转化为本地时间
timetext = timenow.strftime('%y%m%d')


方法二:
import datetime
import  dateutil.parser


st_time = hit['_source']['start_time']
re_time = hit['_source']['report_time']
igmp_delay = hit['_source']['igmp_delay']
live_delay = hit['_source']['live_delay']
st = dateutil.parser.parse(st_time)  #将2017-12-21T04:57:42.000Z 字符串转化为时间
re = dateutil.parser.parse(re_time)
start_time =(st+datetime.timedelta(hours=8))  #将#将utc时间2017-12-21T04:57:42.000Z 转化为时间本地时间2017-12-21 12:57:42+00:00
report_time = (re+datetime.timedelta(hours=8))
message = str(start_time)[0:19]+","+str(report_time)[0:19]+","+str(int(igmp_delay))+","+str(int(live_delay))+"\n"


python 从es中获取数据

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




es = Elasticsearch(hosts="127.0.0.1",timeout=10000)
write_file=open('C:\\Users\\Administrator\\Desktop\\gather-005-201712210.csv',"a+",encoding="utf-8")


rs = es.search(
    index = "gather-005-20171221",
    body={
    "size":42,
    "query": {
    "term": {
      "itv_account": {
        "value": "38:FA:CA:D9:5F:2B"
      }
    }
  },
    "sort": [
    {
      "report_time": {
        "order": "desc"
      }
    }
  ],
  "_source": ["start_time","report_time","igmp_delay","live_delay"]
}
)


for hit in rs['hits']['hits']:
    st_time = hit['_source']['start_time']
    re_time = hit['_source']['report_time']
    igmp_delay = hit['_source']['igmp_delay']
    live_delay = hit['_source']['live_delay']
    st = dateutil.parser.parse(st_time)
    re = dateutil.parser.parse(re_time)
    start_time =(st+datetime.timedelta(hours=8))
    report_time = (re+datetime.timedelta(hours=8))
    message = str(start_time)[0:19]+","+str(report_time)[0:19]+","+str(int(igmp_delay))+","+str(int(live_delay))+"\n"
    write_file.write(message)


write_file.close()


方法三:

UTC  转化UTC

 utc1 = 1406869066, utc2 =  1406869070  相差4, 也就是这两个时间相差4秒


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值