Python——格式化GMT时间

1.背景

最近在做视频上传去获取大小、时间的功能,视频是存在金山云的,由于金山sdk接口用例执行后返回的结果中的时间是http头部时间,时间格式为‘Tue, 08 May 2018 06:17:00 GMT’,现在想将它转换成‘2018-05-08 06:17:00’这种

2.方法

2.1 先看下如何将datetime类型转换成HTTP头所用的GMT时间格式字符串

import datetime
GMT_FORMAT =  '%a, %d %b %Y %H:%M:%S GMT'
datetime.datetime.utcnow().strftime(GMT_FORMAT)

会得到本地的GMT时间  'Thu, 15 Aug 2019 03:02:38 GMT'

2.2  再看下如何将GMT时间格式的字符串转换成datetime类型:

TIME = '2018-05-08 06:17:00'
datetime.datetime.strptime(TIME,GMT_FORMAT)

2.3  一般GMT时间与我国本地时间有个时间差,如果要转换成本地时间,需要再加减一段时间

datetime.datetime.strptime(TIME,GMT_FORMAT)+datetime.timedelta(hours=8)  
#这样就转换成了我国的时间了,北京时间是东八区,要加上8个小时

2.4 写一个通用的方法

def formatGMTime(timestamp):
    GMT_FORMAT = '%a, %d %b %Y %H:%M:%S GMT'
    a = datetime.datetime.strptime(timestamp, GMT_FORMAT) + datetime.timedelta(hours=8)
    return a
其实就是使用strftime和strptime两个函数相互转换而已,如果对两个函数感兴趣,请参阅博客 python学习之strptime和strftime方法
若想进一步了解datetime.timedelta()类的使用方法,请参阅博客 python学习之timedelta

猜你喜欢

转载自www.cnblogs.com/yuanfang0903/p/11357100.html