我想將郵件從一臺IMAP服務器複製到另一臺IMAP服務器。我不想更改任何消息數據。我正在使用python imaplib。如何使用Python imaplib將消息從一臺imap服務器複製到另一臺imap服務器?
這是我試過的代碼:
typ, data = connection1.uid('FETCH', uid, 'RFC822')
connection2.uid('APPEND', None, data[0][1])
但是,這引發了一個異常:
imaplib.error: UID command error: BAD ['"Delivered-To: [email protected]']
所以參數(數據[0] [1])的格式不正確,我認爲。
數據的內容[0] [1]是這樣的:
Delivered-To: [email protected]\r\nReceived: by 10.216.207.222 with SMTP id n27cs38120weo;\r\nFri, 12 Nov 2010 09:43:47 -0800 (PST)\r\nReceived: by 10.200.19.19 with SMTP id y19mr234526eba.52.12894526694;\r\nFri, 12 Nov 2010 09:43:46 -0800 (PST)\r\nReturn-Path: [email protected]\r\nReceived: from dub0-omc1-s20.dub03.hotmail.com (dub0-omc1-s20.dub03.hotmail.com [157.55.0.220])\r\n ......
我該如何解決這個問題?
更新:在Wodin和Avadhesh的幫助下,我現在可以添加消息,但是如何獲取剛添加的消息的UID?
connection2.append(mailbox,'','',data [0] [1])起作用。我將不得不用一個單獨的IMAP命令來獲取uid。 TNX。 – 2010-11-14 21:54:52
如何獲取剛添加的郵件的uid? – 2010-11-14 22:02:46