Skip to main content

This is a simple package that provides a quick way to send emails through code.

Project description

Dmail

This is a simple package that provides a simple way to send emails through code.

By default, the content of the mail should be written in markdown

Steins;Gate

Installation

A simple pip install will do :

python -m pip install Dmail

If you want support for code highlighting with pygments:

python -m pip install Dmail[CodeHighlight]

How to use:

import os
from Dmail.esp import Gmail

# email info
recipient_email = "xxx@gmail.com"
cc_email = "yyy@hotmail.fr"
sender_email = os.environ.get('email')
password = os.environ.get('password')

# Send Markdown e-mails :
message = """
# Email Content
This is a **test**

![test image](tests/files/another_image.jpg)

| Collumn1 | Collumn2 | Collumn3 |
| :------: | :------- | -------- |
| Content1 | Content2 | Content3 |

this is some other text

[^1]: This is a footnote.
[^2]: This is another footnote.
"""

with Gmail(sender_email, password) as gmail:
    gmail.send(message, recipient_email, subject="[Dmail] Markdown Demo", cc=cc_email,
           attachments=[r"path\to\image.jpg", r'path\to\pdf.pdf', r'path\to\text.txt'])
  • You can send an e-mail loaded from a file:
with Gmail(sender_email, password) as gmail:
    gmail.send_from_file(r"path\to\my_message.md", recipient_email, 
                         subject="[Dmail] Markdown File")
  • You can also send text or html content by specifying the subtype :
from Dmail.esp import Hotmail

message = "Simple e-mail"

with Hotmail(sender_email, password) as hotmail:
    hotmail.add_attachments(r"path\to\image.jpg", "another_name.jpg")
    hotmail.send(message, recipient_email, "[Dmail] Text demo", subtype='text')
  • The usage of a custom CSS stylesheet is possible :

    with Hotmail(sender_email, password, styles=r'path\to\style.css') as mail:
        mail.send(message, recipient_email, subject="[Dmail] Markdown Style")
    

Custom SMTP Server

  • You can use a custom smtp server and port:
from Dmail import Email

with Email(mail_server, mail_port, sender_email, password) as email:
    email.send(message, recipient_email, "[Dmail] Text demo")

APIs

Gmail Api

Installation

To use the Gmail Api you need to install extra packages :

python -m pip install Dmail[GmailApi]
First use

You can also use the Gmail API through a token ! You'll need to download "credentials.json" ( Step 1 of this guide : https://developers.google.com/gmail/api/quickstart/python#step_1_turn_on_the )

Send Email
from Dmail.api import GmailApi

message = """
# Email Content
This is a **test**
"""

with GmailApi(sender_email, 'token.pickle', 'credentials.json') as email:
    email.send(message, recipient_email, subject='[Dmail] Gmail Api - test')

Once you've given the rights, this will create the "token.pickle" that you can use later !

Create draft

Instead of sending the email, you can create it as a draft

from Dmail.api import GmailApi

with GmailApi(sender_email, 'token.pickle') as email:
    email.create_draft(message, recipient_email, '[Dmail] Gmail Api - draft')

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

Dmail-1.2.4.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

Dmail-1.2.4-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file Dmail-1.2.4.tar.gz.

File metadata

  • Download URL: Dmail-1.2.4.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.1.post20200323 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.7

File hashes

Hashes for Dmail-1.2.4.tar.gz
Algorithm Hash digest
SHA256 af1fbd1a5cb1e4d3641054ec73f75bc6727c795c660e27a2fe38f94c06825649
MD5 82c2c4a387795e6a8d693a444a3f9793
BLAKE2b-256 b43e95b48b9436eb346577b092f0270093dc4f81fba79b51ed526b1c9d38d028

See more details on using hashes here.

File details

Details for the file Dmail-1.2.4-py3-none-any.whl.

File metadata

  • Download URL: Dmail-1.2.4-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.1.post20200323 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.7

File hashes

Hashes for Dmail-1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8451f9b18917cd1ede614b5348a46043a52b6e73d0fa76c368d24c950a0957c2
MD5 5c6ef8c98808a0ee2ce35f172b25ace3
BLAKE2b-256 f95efd590deb2822af83b0e1da06542aaf08531c8e6986f13215c882eac112fe

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