Flask-Mail用法實例分析
本文實例講述了Flask-Mail用法。分享給大家供大家參考,具體如下:
很多類型的應用程序都需要在特定事件發(fā)生時提醒用戶,而常用的通信方法是電子郵件。
雖然 Python 標準庫中的 smtplib
包可用在 Flask 程序中發(fā)送電子郵件,但包裝了 smtplib
的
Flask-Mail
擴展能更好地和 Flask 集成
安裝
pip3 install flask-mail
Flask-Mail SMTP服務器的配置
配置 | 默認值 | 說明 |
---|---|---|
MAIL_SERVER | localhost | 電子郵件服務器的主機名或IP地址 |
MAIL_PORT | 25 | 電子郵件服務器的端口 |
MAIL_USE_TLS | False | 啟用傳輸層安全協議 |
MAIL_USE_SSL | False | 啟用安全套接層協議 |
MAIL_USERNAME | None | 郵件賬戶的用戶名 |
MAIL_PASSWORD | None | 郵件賬戶的密碼 |
代碼示例
from threading import Thread from flask import Flask from flask_mail import Mail,Message app = Flask(__name__) app.config["MAIL_SERVER"] = "smtp.163.com" app.config["MAIL_PORT"] = 465 app.config["MAIL_USE_SSL"] = True app.config["MAIL_USERNAME"] = "xxxxx@163.com" app.config["MAIL_PASSWORD"] = "123456" mail = Mail(app) @app.route("/send_mail") def send_mail(): """ 發(fā)送郵件 """ message = Message("標題",sender=app.config["USERNAME"],recipients=["xxxxxx@qq.com"]) message.body = "內容" t = Thread(target=send_email,args=(message,)) t.start() return "發(fā)送成功" def send_email(msg): with app.app_context(): mail.send(msg) if __name__ == "__main__": app.run()
Message:郵件消息,sender:發(fā)送者郵箱;recipients:接收者郵箱,列表格式;body:內容
網易163免費郵箱相關服務器信息
使用網易郵箱作為發(fā)送者郵箱時應注意,郵箱密碼并非為郵箱的登錄密碼,而是客戶端授權密碼。
希望本文所述對大家基于flask框架的Python程序設計有所幫助。
相關文章
vscode autopep8無法格式化python代碼問題解決
這篇文章主要為大家介紹了vscode autopep8無法格式化python代碼問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09Windows 平臺做 Python 開發(fā)的最佳組合(推薦)
在 Windows 上如何做 Python 開發(fā)呢?相信大神們都會有自己的解決方案,但本文希望介紹微軟官方發(fā)布的 Terminal 和 Visual Studio Code,希望它們能構建更流暢的 Windows 開發(fā)體驗,感興趣的朋友跟隨小編一起看看吧2020-07-07