0

这可能是一个新手问题,但我无法弄清楚为什么我不能成功地将参数化搜索条件传递给 imaplib。

设置代码是:

M = imaplib.IMAP4_SSL("imap.gmail.com", 993)
M.login("usrname", "passwd") 
typ, data = self.M.select()   # Select default mailbox

以下作品:

typ, data = M.uid('search', None, '(SENTSINCE 01-Jan-2010)')

但是,如果我尝试将搜索条件作为字符串传递,我会得到

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

这是失败的代码:

f = "'(SENTSINCE 01-Jan-1994)'"
typ, data = M.uid('search', None, f)

我尝试了很多语法,请阅读 RFC3501。这是字符集问题吗?

4

1 回答 1

0

您需要将日期放在引号内,您的代码将是:

typ, data = M.uid('search', None, '(SENTSINCE "01-Jan-2010")')
于 2016-09-02T10:09:02.003 回答