【发布时间】:2018-02-06 05:49:34
【问题描述】:
期望的结果:
我正在尝试查找 Outlook 收件箱中超过 30 天的所有邮件并删除这些邮件。
问题:
问题是,我最终尝试将 time 与 datetime.datetime 进行比较。于是搜了一下,发现可能需要用到.strptime()。但现在我收到此错误消息:ValueError: time data '12/06/17 16:53:43' does not match format '%m/%d/%Y %H:%M:%S '。我怎样才能得到我正在寻找的结果?有更好的解决方案吗?
这是我的代码:
for folder in default_folders:
print( "Processing %s" % folder.Name )
item = folder.Items
msg = item.GetFirst()
print type(msg.CreationTime) #this gives 'time' instance
print msg.CreationTime # prints like: 12/7/17 10:50:05
recv_time = datetime.strptime(str(msg.CreationTime), "%m/%d/%Y %H:%M:%S").date() # <-- problem
#datetime.replace(recv_time) i think this should be here
past30days=datetime.now()-timedelta(days=30) # the date 30 days ago
if recv_time > past30days: # if the recv_time date is greater than 30 days, do something
pass
【问题讨论】:
标签: python datetime time outlook