Skip to main content

Simple wrapper around email and smtplib for composing and sending email messages in an intuitive, simple interface.

Project description

py-emails

Build Status Coverage Status

Simple wrapper around email and smtplib for composing and sending email messages in an intuitive, simple interface. Pure python, no dependencies outside of the standard library

Installation and use

Install with pip or your favorite package manager: pip install py-emails

Emails can be created declaratively:

from emails import Email

first_attachment = {
    'filename': 'example.png', 
    'content': open('example.png', 'rb').read()
}
other_attachment = {
    'filename': 'example.csv', 
    'content': open('example.csv', 'rb').read()
}
my_email = Email(
    sender='me@example.com', 
    subject='How are you?'
    body='Long time no see, we should get together!',
    attachments=[first_attachment, other_attachment]
)

Or using a template dictionary:

from emails import from_template

first_attachment = {
    'filename': 'example.png', 
    'content': open('example.png', 'rb').read()
}
other_attachment = {
    'filename': 'example.csv', 
    'content': open('example.csv', 'rb').read()
}
template = {
    'sender': 'me@example.com',
    'subject': 'How are you?',
    'body': 'Long time no see, we should get together!',
    'attachments': [first_attachment, other_attachment]
}
my_email = from_template(template)

Once you have the email object, sending it is as simple as specifying recipient(s) and an SMTP host:

recipients = ['person1@example.com', 'person2@example.com']
my_email.send(recipients, 'smtp.example.com')
my_email.send('person3@example.com', 'smtp.example.com')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py-emails-0.0.2.tar.gz (2.6 kB view details)

Uploaded Source

Built Distribution

py_emails-0.0.2-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file py-emails-0.0.2.tar.gz.

File metadata

  • Download URL: py-emails-0.0.2.tar.gz
  • Upload date:
  • Size: 2.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7

File hashes

Hashes for py-emails-0.0.2.tar.gz
Algorithm Hash digest
SHA256 a60279c90e4b23c14ce83a64024f046db813c79e1bee717cd35624058427c1f0
MD5 85c8d899d0ef9e65e6b60dd44d9f0d8a
BLAKE2b-256 560989ffa8732b3fd294befee6edc04d79547c028bfffc896dd753da42e0db67

See more details on using hashes here.

File details

Details for the file py_emails-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: py_emails-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7

File hashes

Hashes for py_emails-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 010020ecae1576a1ef6b820617b2af1a56d8aeb53775ce445ab49da63ec5094d
MD5 420303154e39d803f93b79f96215db16
BLAKE2b-256 ae2527edef5e7d2c2d69dc02cc19a9da528635515a193fdf028ba35950632d04

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page