您好,登錄后才能下訂單哦!
本文實例講述了Flask-Mail用法。分享給大家供大家參考,具體如下:
很多類型的應用程序都需要在特定事件發生時提醒用戶,而常用的通信方法是電子郵件。
雖然 Python 標準庫中的 smtplib
包可用在 Flask 程序中發送電子郵件,但包裝了 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(): """ 發送郵件 """ message = Message("標題",sender=app.config["USERNAME"],recipients=["xxxxxx@qq.com"]) message.body = "內容" t = Thread(target=send_email,args=(message,)) t.start() return "發送成功" def send_email(msg): with app.app_context(): mail.send(msg) if __name__ == "__main__": app.run()
Message:郵件消息,sender:發送者郵箱;recipients:接收者郵箱,列表格式;body:內容
網易163免費郵箱相關服務器信息
使用網易郵箱作為發送者郵箱時應注意,郵箱密碼并非為郵箱的登錄密碼,而是客戶端授權密碼。
希望本文所述對大家基于flask框架的Python程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。