簡體   English   中英

來自Gmail帳戶的未讀電子郵件

[英]Unread e-mails from Gmail account

我有一個python腳本,如下所示:

import imaplib, re
import os
import time
import socket

imap_host = 'imap.gmail.com'
mail = imaplib.IMAP4_SSL(imap_host)
mail.login("user", "pass")
mail.select("inbox") # connect to inbox.

while True:
    try:
        result, data = mail.uid('search', None, 'UNSEEN')
        uid_list = data[0].split()
        print len(uid_list), 'Unseen emails.'
        if len(uid_list) > 20:
         os.system('heroku restart --app xxx')
        time.sleep(60)
    except KeyboardInterrupt:
        print 'Quitting'
        pass

目的是檢查有多少未讀電子郵件並重新啟動Heroku服務器。 問題在於它似乎不能很好地工作。

~# python gmail_new.py
1 Unseen emails.
0 Unseen emails.

第一次啟動時,它可以工作(1封未讀的電子郵件),但是第二次它應該返回20而不是0。下一次也是0,從不大於0。我似乎無法弄清楚為什么。

據我所知,您總是會收到一封額外的看不見的電子郵件。 確保您的帳戶中有一些未讀郵件。 替換:

print len(uid_list), 'Unseen emails.'

print len(uid_list)-1, 'Unseen emails.'

這應該工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM