有没有人知道Python模块会在Python中将RFC 822时间戳转换为人类可读的格式(比如Twitter)?
我找到parsedatetime,似乎反过来了。
答案 0 :(得分:8)
在python中,您可以使用rfc822模块。此模块提供parsedate方法。
尝试根据RFC 2822中的规则解析日期。
但是,此模块已弃用。
自版本2.3开始不推荐使用:应优先使用电子邮件包而不是rfc822模块。此模块仅用于保持向后兼容性,并已在3.0中删除。
根据此评论,最好使用parsedate模块中的email.utils方法。
email.utils.parsedate(date)
编辑:
示例代码:
import email.utils
from time import mktime
from datetime import datetime
example_date = "Sat, 02 Mar 2011 15:00:00"
date_parsed = email.utils.parsedate(example_date)
dt = datetime.fromtimestamp(mktime(date_parsed))
today = datetime.today()
diff_date = today - dt # timedelta object
print "%s days, %s hours ago" \
% (diff_date.days, diff_date.seconds / 3600)
输出(暂时):
31 days, 2 hours ago
答案 1 :(得分:2)
datetime.strptime
会将时间戳转换为日期时间对象,您可以使用datetime.strftime
格式化
http://docs.python.org/library/datetime.html#strftime-strptime-behavior
答案 2 :(得分:0)