如何比较此格式的日期时间对象
“星期四,2015年1月15日06:35:37 GMT”与当前时间?
答案 0 :(得分:1)
您可以使用datetime
模块将日期时间字符串转换为datetimetime对象。
然后在两个日期时间对象之间获得不同。
>>> from datetime import datetime
>>> a = datetime.strptime("Thu, 15 Jan 2015 06:35:37 GMT", "%a, %d %b %Y %H:%M:%S GMT", )
>>> b = datetime.strptime("Fri, 16 Jan 2015 07:40:40 GMT", "%a, %d %b %Y %H:%M:%S GMT", )
>>> c1 = b - a
>>> c1
datetime.timedelta(1, 3903)
>>> c1.days
1
>>> c1.total_seconds()
90303.0
>>> c1.seconds
3903
>>>
答案 1 :(得分:0)
最简单的方法是使用dateutil
包。首先安装dateutil
,然后再安装:
from dateutil.parser import parse
parsed_time = parse("Thu, 15 Jan 2015 06:35:37 GMT")
然后你可以from datetime import datetime
datetime.now()
获得dateutil
的当前时间,并且你可以根据需要比较两个日期时间对象。
如果您无法使用datetime.strptime()
,您仍然可以使用{{1}}执行此操作,但是您必须准确指定日期字符串,这非常繁琐。在这种情况下,请参阅标准库文档。
答案 2 :(得分:0)
import time
from email.utils import parsedate_tz, mktime_tz
# Convert the input date string to "seconds since the epoch" (POSIX time)
timestamp = mktime_tz(parsedate_tz("Thu, 15 Jan 2015 06:35:37 GMT"))
# Compare it with the current time (ignoring leap seconds)
elapsed_seconds = time.time() - timestamp