2016-11-19 14 views
0

ここでは数多くの質問と回答を勉強しましたが、コードが正しいことがわかりました。しかし何らかの理由で、私が選択したメールは削除されていません。m.expungeでメッセージが削除されない

私のコードは次のとおりです。

m = imaplib.IMAP4_SSL("imap-mail.outlook.com") 
m.login("MY_EMAIL","MY_PWORD") 
m.select("Sent") 
resp, data = m.uid("search", None, "ALL") 
uid = data[0].split()[-1] 

#Can also get message content with lines 
# resp,data = m.uid('fetch',uid,"(BODY[HEADER])") 
# print(data) 

m.store(uid, "+FLAGS", "\\Deleted")    #Works fine to here 
m.expunge()          #This doesn't delete message 
m.close() 
m.logout() 

私はprint(m.expunge())m.expunge()行を変更した場合、私はタプル

( 'OK'、[なし])

にメッセージを取得します「OK」の応答があっても依然としてメールボックスにあります。 これはあなたがメッセージを識別するためのUIDを使用している

答えて

0

をなぜ起こるか私にはわからないよ、あなたはまた、UIDが\ Deletedフラグ変更コマンドを使用する必要があります:あなたが現在設定しようとしている

m.uid('STORE' uid, "+FLAGS", "\\Deleted") 

をおそらく存在しないか、まったく異なるメッセージを参照する、同じUIDを持つメッセージシーケンス番号のフラグを削除しました。

関連する問題