2014-01-14 104 views
0

我有一個問題,我覺得困惑。我正在使用imaplib在發送文件夾中搜索電子郵件,然後將它們導出到csv中。它工作得很好,除了它沒有收到所有的電子郵件。它似乎從那天的午夜到下午6點收到電子郵件,然後從下午6點到晚上11:59沒有收到任何電子郵件。我相信我在某處讀過imaplib使用GMT(也許我錯了?),所以這可能是問題(我是EST)?我不知道如何處理這個問題,而不是查詢社區。imaplib沒有得到文件夾中的所有電子郵件

下面的代碼示例。我可以提供任何必要的信息,以協助援助。提前致謝!

import imaplib 
import datetime 
import csv 

TODAYSDATE = datetime.date.today().strftime("%d-%b-%Y").strip() 
ONEDAYAGO = (datetime.date.today() - datetime.timedelta(days=1)).strftime("%d-%b-%Y").strip() 

SERVER = 'server.email.com' 
IMAPPORT = 993 

CSVFILE = "EMAILS.csv" 
EMAILS = [] 
TO = [] 

mailbox = imaplib.IMAP4_SSL(SERVER, IMAPPORT) 
mailbox.login(USER, PASS) 
mailbox.select('Sent') 

typ, data = mailbox.search(None, '(since %s before %s)' % (ONEDAYAGO, TODAYSDATE)) 

for sentto in data[0].split(): 
    typ, data = mailbox.fetch(sentto, '(RFC822.SIZE BODY[HEADER.FIELDS (TO)])') 
    message = data[0][1].lstrip('To: ').strip() + ' ' 
    print message 
    TO.append([message]) 

TO.insert(0, ['TO']) 

TO_FINAL = [l[0] for l in TO] 

mailbox.close() 
mailbox.logout() 

rows = zip(TO_FINAL) 

print rows 

CSV = open(CSVFILE, 'wb') 
WRITECSV = csv.writer(CSV) 

for row in rows: 
    WRITECSV.writerow(row) 
+0

請提供最短的程序來演示錯誤。 http://stackoverflow.com/help/mcve –

回答

相關問題