Я пытаюсь написать программу, которая отслеживает почтовый ящик IMAP и автоматически копирует каждое новое входящее сообщение в папку «Архив». Я использую imaplib2, который реализует команду IDLE. Вот моя основная программа:
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 () при первом изменении почтового ящика. Но ответ от недавнего () не имеет смысла для меня, и после первого сообщения я никогда не получаю никаких других уведомлений.
Кто-нибудь знает, как это сделать?