https://github.com/sdpython/pymmails/blob/master/_doc/sphinxdoc/source/_static/project_ico.png?raw=true

pymmails: send and grab mailsΒΆ

Build status Build Status Windows https://circleci.com/gh/sdpython/pymmails/tree/master.svg?style=svg https://badge.fury.io/py/pymmails.svg GitHub Issues MIT License https://codecov.io/github/sdpython/pymmails/coverage.svg?branch=master

The module was started to grab emails using IMAP and to store them on a local disk. It is now used to download material sent by students before an oral presentation, which is quite annoying to do manually.

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'

Links: