python - 如何从mail.uid python中的时间戳获取所有电子邮件

标签 python email imap imaplib

我知道如何获取特定日期以来的所有邮件:

import datetime
date = (datetime.date.today() - datetime.timedelta(1)).strftime("%d-%b-%Y")
result, data = mail.uid('search', None, '(SENTSINCE {date})'.format(date=date))

我无法获取特定时间戳的邮件。我的尝试是:

import datetime
date = (datetime.datetime.now() - datetime.timedelta(hours=24)).strftime("%d-%b-%Y %H:%M:%S")
result, data = mail.uid('search', None, '(SENTSINCE {date})'.format(date=date))

但我收到以下错误:

error: UID command error: BAD ['Could not parse command']

最佳答案

IMAP搜索语法不支持倍数。只有日期。这是协议(protocol)限制。有关搜索语法,请参阅 RFC 3501。

关于python - 如何从mail.uid python中的时间戳获取所有电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32401392/

相关文章:

html - css 填充在 outlook 中不起作用

html - 为 Gmail 构建电子邮件,我的 <img> 一直设置为隐藏

java - Spring集成总是将收到的消息标记为已读

python - 将 Idle 与 Imap_tools 和 Yahoo 结合使用

python - 将列表作为参数传递给 Python C 模块?

python - 捕获在 python 中运行的 bash 代码的输出

python - SQLAlchemy 连接来自同一个表的多个列

ruby-on-rails - Gmail未检测到回复字段