Makes sending emails easy and DRY — For Python 3.
Drymail is a minimalist wrapper over Python’s existing smtplib and email libraries, designed to be friendly but unrestrictive. Here’s how you might send a simple email with an attachment using drymail.
from drymail import SMTPMailer, Message
client = SMTPMailer(host='smtp.email.com', user='johndoe', password='password', tls=True)
message = Message(subject='Congrats on the new job!', sender=('John Doe', 'john@email.com'),
receivers=[('Jane Doe', 'jane@message.com'), 'jane.doe@mail.io'], text='When is the party? ;)')
message.attach(filename='/path/to/congrats.pdf', mimetype='application/pdf')
client.send(message)
- Supports creating email with HTML content, plaintext content, or both!
- Supports mentioning contacts in the
“John Doe" <john@email.com>
format. - Support standard headers like
CC
,BCC
,Reply-To
andAuthors
. - Supports injecting custom headers.
- Supports adding attachments.
- And most importantly — the library being minimalist, it doesn’t restrict you in any way like some of the most fancier email frameworks do.
Install drymail
by running —
$ pip3 install drymail
Documentation is available at https://drymail.readthedocs.io/
- Test suite.
- Restructure the
Message
class to handle dynamicprepare
.
All kinds of contribution are welcome.
- Issue Tracker — https://github.com/drymail/issues
- Source Code — https://github.com/drymail
This project is licensed under the MIT license.