python outlook删除超过30天的消息

时间:2018-02-05 20:39:33

标签: python datetime time outlook

期望的结果:
我试图在我的Outlook收件箱中查找超过30天的所有邮件并删除这些邮件 的 问题:
问题是,我最终试图将时间 datetime.datetime 进行比较。所以我搜索并发现我可能需要使用 .strptime()。但是现在我收到了这个错误信息: ValueError:时间数据' 12/06/17 16:53:43'不符合格式'%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

1 个答案:

答案 0 :(得分:0)

更改result = random.choice([ (i, j) for i, row in enumerate(a) for j, cell in enumerate(row) if not cell]) %Y格式字符串。 %y是四位数(2018年),而%Y是2(18)