Flask

Flask-Mail je knihovna pro Flask, sloužící k odesílaní mailů.

Ve Flasku je posílání mailů relativně snadné. Importuje se knihovana, vyplní se config a můžeme odesílat. Pokud se nepoužívá externí server ale lokální Postfix, lze proměnné nastavit na localhost. Výhodou Flask-Mail je také výborná úroveň "verbose", při zapnutém debug módu.

from flask import Flask
from flask_mail import Mail, Message

app = Flask(__name__)

app.config['DEBUG'] = True
app.config['TESTING'] = False
app.config['MAIL_SERVER'] = 'smtp.yyy.yy'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USE_SSL'] = False
app.config['MAIL_DEBUG'] = True
app.config['MAIL_USERNAME'] = 'testmailbox@yyy.yy'
app.config['MAIL_PASSWORD'] = 'heslo'
app.config['MAIL_DEFAULT_SENDER'] = 'testmailbox@yyy.yy'
app.config['MAIL_MAX_EMAILS'] = None
#app.config['MAIL_SUPRESS_SEND'] = False
app.config['MAIL_ASCII_ATTACHMENTS'] = False

mail = Mail(app)

@app.route('/')
def index():
    msg = Message('Hey There', recipients=['testmailbox2@yyy.yy'])
    msg.html = '<b>Test email sending</b>'
    mail.send(msg)
    return('Message has been sent!')

if __name__ == "__main__":
        app.run()