使用falsk-mail发送邮件
一、邮件发送的扩展
关于如何找到flask发送邮件的插件?,上一篇已经分享了如何找到第三方插件,也找到了插件flask-mail的使用文档,那我们就来实战吧
二、根据文档,总结发送邮件的流程
从文档中可以总结出发送邮件的步骤如下:
-
安装扩展
-
配置邮件服务器的地址、端口号、账号密码等信息
我下面的用到的邮箱服务器,是使用我私人邮箱设置,若是不知道怎么设置,请参考如何配置私人邮箱为发件服务器端 -
创建一个Mail实例
mail = Mail(app)
-
创建一个Message消息实例 ,有三个参数:邮件标题、发送者和接收者
-
创建邮件内容,如果是 HTML 格式,则使用msg.html,如果是纯文本格式,则使用msg.body
-
最后调用mail.send(msg)发送消息
三、实现邮件发送功能
参阅扩展的文档以了解其安装、配置和使用说明。
3.1、安装扩展
安装之前,先查看是否已经安装过:
pip show flask-mail
若是已安装,则会提示如下信息:
若是没有安装,则执行安装步骤:
使用pip安装
pip install Flask-Mail
或者下载源码安装
git clone https://github.com/mattupstate/flask-mail.git
cd flask-mail
python setup.py install
3.2、 配置
Flask-Mail 使用标准的 Flask 配置 API 进行配置,下面是一些常用的配置项:
3.3、 发送邮件(创建mail、message实例并发送)
根据文档,直接分享我的代码:
from flask import Flask
from flask_mail import Mail, Message
app =Flask(__name__)
app.config['MAIL_SERVER']='smtp.qiye.163.com' #配置邮箱
app.config['MAIL_PORT'] = 465
app.config['MAIL_USERNAME'] = '******'
app.config['MAIL_PASSWORD'] = '*****'
app.config['MAIL_USE_TLS'] = False
app.config['MAIL_USE_SSL'] = True
mail = Mail(app) #创建Mail类实例
@app.route("/")
def index():
msg = Message('Hello'