介绍:
Web应用程序经常需要向用户、客户端、管理员、运维人员等相关人员发送邮件。在Flask框架中提供了Flask-Mail邮件库来管理电子邮件的收发。
安装:flask-mail:
pip3 install flask-mail
配置:
服务器信息:
Flask-Mail :SMTP服务器配置:(SMTP服务器如果不进行配置,默认连接端口号是25,不需要验证身份就可以发送电子邮件。)
参数:
- MAIL_DEBUG:支持自定义调试,默认是Flask应用程序的调试状态;
- MAIL_SERVER: 电子邮件服务器的ip地址
- MAIL_PORT:电子邮件服务器端口;(默认不加密为25)
- MAIL_DEFAULT_SENDER:设置默认发件人;
- MAIL_MAX_EMAILS:设置要发送的最大邮件;
- MAIL_SUPPRESS_SEND: 如果app.testing设置为true,则发送被抑制;
- MAIL_ASCII_ATTACHMENTS: 如果设置为true,则将附加的文件名转换为ASCII。
- MAIL_USE_TLS:端口号是587 ;使用TLS加密
- MAIL_USE_SSL:端口号是465 ;使用SSL加密
- MAIL_USERNAME:邮件账户名;
- MAIL_PASSWORD:邮件账户密码
例子:
from flask import Flask
from flask_mail import Mail
app =Flask(__name__)
app.config['MAIL_SERVER']='smtp.qq.com' #邮件服务器的名称/IP地址
app.config['MAIL_PORT'] = 465 #所用服务器的端口号
app.config['MAIL_USERNAME'] = 'yourmail@qq.com' #发件人的用户名
app.config['MAIL_PASSWORD'] = '*******' #发件人的POP3/IMAP/SMTP服务的SSL连接客户端授权码
app.config['MAIL_USE_TLS'] = False #禁用传输安全层加密
app.config['MAIL_USE_SSL'] = True #启用安全套接字层加密
mail = Mail(app) #创建邮件类对象
if __name__ == '__main__':
app.run(debug = True)