【发布时间】:2011-01-04 01:27:30
【问题描述】:
我正在尝试编写一个程序来监控 IMAP 邮箱并自动将每条新收到的邮件复制到“存档”文件夹中。我正在使用实现 IDLE 命令的 imaplib2。这是我的基本程序:
M = imaplib2.IMAP4("mail.me.com")
M.login(username,password)
lst = M.list()
assert lst[0]=='OK'
for mbx in lst[1]:
print "Mailboxes:",mbx
def process(m):
print "m=",m
res = M.recent()
print res
M.select('INBOX')
M.examine(mailbox='INBOX',callback=process)
while True:
print "Calling idle..."
M.idle()
print "back from idle"
M.close()
M.logout()
当邮箱发生第一次更改时,它会正确打印邮箱并运行 process()。但是最近()的响应对我来说没有意义,并且在第一条消息之后我再也没有收到任何其他通知。
有人知道怎么做吗?
【问题讨论】:
标签: python imap python-idle imaplib