pymmails: send and grab mails¶
What is it?¶
The module was started to grab emails using IMAP and to store them on a local disk. I now use it to download to material sent by my students before an oral presentation. I receive many of them and it is usually annoying to download them one by one. Here is the code I use:
from pymmails import MailBoxImap, EmailMessageRenderer user = "your.email" pwd = "passsword" server = "imap.your_provider.ext" box = MailBoxImap(user, pwd, server) render = EmailMessageRenderer() box.login() for mail in box.enumerate_mails_in_folder("saved", pattern="<pattern>") : mail.dump(render, location=temp, fLOG=fLOG) box.logout() render.flush()
Some examples of patterns:
pattern='FROM "xavier" SINCE 1-Feb-2013' pattern='FROM "xavier" SINCE 1-Feb-2013 BEFORE 5-May-2013' pattern='FROM "xavier" SINCE 1-Feb-2013 BEFORE 5-May-2013 UNANSWERED' pattern='CC "jacques" FROM "xavier" DELETED' pattern='TEXT "github"' pattern='LARGER 10000 SMALLER 1000000' pattern='SUBJECT "programmation"' pattern='TO "student" FLAGGED' pattern='UNSEEN'
pip install pymmails
download email and attchments from an server IMAP4 (gmail for example)
search for recent emails
By default, IMAP functionalities are not enabled on gmail (if you have a gmail account), it can be enabled from the settings page (see Enable POP and IMAP for Google Apps) and you need to allow less secure app to access your account from Security page.
Indices and tables¶