Skip to content

makes sending emails very easy by doing all the magic for you, asynchronously

License

Notifications You must be signed in to change notification settings

kootenpv/aioyagmail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aioyagmail -- Yet Another GMAIL/SMTP client, using AsyncIO

Join the chat at https://gitter.im/kootenpv/aioyagmail PyPI PyPI

The goal here is to make it as simple and painless as possible to send emails using asyncio.

In the end, your code will look something like this:

import asyncio
from aioyagmail import AIOSMTP

loop = asyncio.get_event_loop()

async def send_single():
    # walks you through oauth2 process if no file at this location
    async with AIOSMTP(oauth2_file="~/oauth2_gmail.json") as yag:
        await yag.send(to="[email protected]", subject="hi")

async def send_multi():
    async with AIOSMTP(oauth2_file="~/oauth2_gmail.json") as yag:
        # Runs asynchronously!
        await asyncio.gather(yag.send(subject="1"),
                             yag.send(subject="2"),
                             yag.send(subject="3"))

loop.run_until_complete(send_single())
loop.run_until_complete(send_multi())

Username and password

It is possible like in yagmail to use username and password, but this is not actively encouraged anymore. See https://github.com/kootenpv/yagmail#username-and-password how to do it.

For more information

Have a look at yagmail. Any issue NOT related to async should be posted there (or found out about).

Word of caution

Watch out that gmail does not block you for spamming. Using async you could potentially be sending emails too rapidly.

Donate

If you like aioyagmail, feel free (no pun intended) to donate any amount you'd like :-)

PayPal

About

makes sending emails very easy by doing all the magic for you, asynchronously

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages