解析将搜索条件传递给imaplib的错误

时间:2012-07-07 19:02:31

标签: python imaplib

这可能是一个新手问题,但我无法弄清楚为什么我无法成功将参数化搜索条件传递给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。这是一个字符集问题吗?

1 个答案:

答案 0 :(得分:0)

您需要将日期置于引号内,而您的代码将是:

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