Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using python imaplib to "delete" an email from Gmail?

Tags:

python

email

imap

Can you delete emails with imaplib? If so how?

like image 767
Demon Labs Avatar asked Nov 22 '09 00:11

Demon Labs


1 Answers

Use the store method (of the IMAP4 object representing your connection) to set the r'\Deleted' flag on the message number you want to delete, as the example in the docs show; then the expunge method to actually perform all deletions so marked.

Gmail's implementation of IMAP has subtly different semantics, by default, but if you want you can tweak it to behave much more like a traditional IMAP implementation (where the above sequence works) -- basically you have to enable the "Advanced IMAP Controls" lab, then follow the instructions at the URL I gave to get exactly the IMAP semantics you desire (physically deleting rather than archiving "deleted" mails, waiting or not for expunge, and so forth).

like image 189
Alex Martelli Avatar answered Oct 13 '22 06:10

Alex Martelli