如何使用`boto` API 获取AWS S3键的正确GMT `last_modified`?
在使用get_key方法获取最后修改时间的时候,发现时间有3小时的偏差。
k = b.get_key('av-bait/modules/reporters.py')
print k.last_modified
我得到的是:'2014年5月17日星期六 18:42:02 GMT',而文件实际上是在21:42:02更新的,下面的图片可以看到:
有没有办法通过s3获取正确的GMT时间?
谢谢
3 个回答
1
这个问题的解决方法很简单——时间戳是正确的。
注意网页上时间戳后面的 +03:00:00
。如果你把这个时间加到你之前看到的时间上,你就会得到和询问 last_modified
一样的时间戳。
1
看看你截图上的时区。截图显示文件是在 21:42:02 GMT+300
修改的,这个时间相当于 18:42:02 GMT
。所以其实这两个时间是一样的,你只需要做一些时区转换的操作就可以了。
1
如果你想把字符串调整三个小时,可以使用:
>>> t='Sat, 17 May 2014 18:42:02 GMT'
>>> from datetime import datetime
>>> str_time= datetime.strptime(t,'%a, %d %B %Y %H:%M:%S GMT')
>>> updated_time= str_time.replace(hour=str_time.hour+3)
>>> print updated_time
2014-05-17 21:42:02
有很多方法可以做到这一点,可以看看datetime的文档,