用flask开发个人博客(24)—— flask中使用Flask_Mail发送电子邮件

        flask中使用Flask-Mail提供对电子邮件的支持,下面将分步骤测试flask中发送电子邮件的功能:

1 配置SMTP服务器的信息

        我们需要借助flask程序实例app的config属性来配置电子邮件的SMTP服务器信息,其中主要的配置选项包括服务器的地址MAIL_SERVER\端口号MAIL_PORT\用户名MAIL_USERNAME\密码MAIL_PASSWORD.下面以QQ邮箱为例发送电子邮件.

     import os

     #...

     app.config['MAIL_SERVER']='smtp.qq.com'

     app.config['MAIL_PORT']=587
     
     app.config['MAIL_USE_TLS']=True
    
     app.config['MAIL_USERNAME']=os.environ.get('MAIL_USERNAME')

     app.config['MAIL_PASSWORD']=os.environ.get('MAIL_PASSWORD')
        这里我们将用户名和密码保存在名为MAIL_USERNAME和MAIL_PASSWORD的环境变量中,然后设置相应的环境变量即可.注意app.config['MAIL_USE_TLS']=True这句代码,因为我们用的端口是587,为TLS(传输层安全协议)的安全端口,所以设置传输层安全协议生效.

2 创建电子邮件Mail实例

       

from flask_mail import Mail
mail=Mail(app)

3 配置所需要的环境变量


export MAIL_USERNAME=XXX@qq.com
export MAIL_PASSWORD=XXXXX

4 在python shell中发送电子邮件

from flask.ext.mail import Message
from test import mail
msg=Message('My Subject',sender='879651072@qq.com',recipients=['879651072@qq.com'])
msg.body='text body'
msg.html='<b>HTML</b> body'
with app.app_context():
    mail.send(msg)
效果如图:




Github位置:
https://github.com/HymanLiuTS/flaskTs

克隆本项目:
git clone git@github.com:HymanLiuTS/flaskTs.git
获取本文源代码:
git checkout FL24



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值