为什么这个imaplib请求不会一直有效?

时间:2012-06-15 17:25:30

标签: python gmail imaplib

我正在使用imaplib并尝试解析来自gmail帐户的邮件。我的代码已经工作了好几个月了,现在突然之间它已经失败了。我不知道该归因于什么。

以下工作大约1/3的时间。通过'作品',我的意思是当我收到电子邮件时成功打印除了“没有新消息”之外的其他内容。有人会有更强大的方法来尝试这个吗?或者也许现在建议配置gmail帐户以使其更可靠地工作?

我也普遍感兴趣,如果我编码的方式似乎是一种很好的做法。 感谢您的帮助......

def check_email(interval):
    while True:
        server.select('INBOX')
        status, ids = server.search(None, 'UnSeen')

        if not ids or ids[0] is '': 
            print 'no new messages'
        else:
            print 'found a message; attempting to parse...'
            latest_id = ids[0]
            status, msg_data = server.fetch(latest_id, '(UID BODY[TEXT])')
            raw_data = msg_data[0][1]
            char_array = list(raw_data)
            print 'message result: ', char_array 

        time.sleep(interval)

EDIT1:我现在收到以下错误:

  

“imaplib.error:FETCH命令错误:BAD ['无法解析命令']”

有谁知道我可以归结为什么?这显然是行

的结果
status, msg_data = server.fetch(latest_id, '(UID BODY[TEXT])')

EDIT2:我发现我可以登录gmail帐户,点击“更多”标签,然后点击“全部标记为已读”,突然代码按预期工作。有没有办法用imaplib ??

将所有消息标记为远程读取

0 个答案:

没有答案