Flask-Mail用法实例分析


Posted in Python onJuly 21, 2018

本文实例讲述了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-Mail用法实例分析

使用网易邮箱作为发送者邮箱时应注意,邮箱密码并非为邮箱的登录密码,而是客户端授权密码。

希望本文所述对大家基于flask框架的Python程序设计有所帮助。

Python 相关文章推荐
简析Python的闭包和装饰器
Feb 26 Python
Python Paramiko模块的安装与使用详解
Nov 18 Python
Python异常处理操作实例详解
May 10 Python
Python实现基于C/S架构的聊天室功能详解
Jul 07 Python
Flask之flask-session的具体使用
Jul 26 Python
python 实现查找文件并输出满足某一条件的数据项方法
Jun 12 Python
浅谈Python小波分析库Pywavelets的一点使用心得
Jul 09 Python
django+echart数据动态显示的例子
Aug 12 Python
tensorflow自定义激活函数实例
Feb 04 Python
在Keras中利用np.random.shuffle()打乱数据集实例
Jun 15 Python
Python+MySQL随机试卷及答案生成程序的示例代码
Feb 01 Python
Python尝试实现蒙特卡罗模拟期权定价
Apr 21 Python
python实现傅里叶级数展开的实现
Jul 21 #Python
Python实现快速傅里叶变换的方法(FFT)
Jul 21 #Python
Python实现获取本地及远程图片大小的方法示例
Jul 21 #Python
opencv python 傅里叶变换的使用
Jul 21 #Python
Numpy中的mask的使用
Jul 21 #Python
Flask框架使用DBUtils模块连接数据库操作示例
Jul 20 #Python
Flask框架WTForm表单用法示例
Jul 20 #Python
You might like
php学习 字符串课件
2008/06/15 PHP
Windows PHP5和Apache的安装与配置
2009/06/08 PHP
PHP运行出现Notice : Use of undefined constant 的完美解决方案分享
2012/03/05 PHP
基于PHP常用字符串的总结(待续)
2013/06/07 PHP
基于jquery的实现简单的表格中增加或删除下一行
2010/08/01 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
jQuery的3种请求方式$.post,$.get,$.getJSON
2014/03/28 Javascript
JavaScript window.location对象
2014/11/14 Javascript
JavaScript对象数组的排序处理方法
2015/10/21 Javascript
纯前端JavaScript实现Excel IO案例分享
2016/08/26 Javascript
canvas绘制的直线动画
2017/01/23 Javascript
Restify中接入Socket.io报Error:Can’t set headers的错误解决
2017/03/28 Javascript
Vue键盘事件用法总结
2017/04/18 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
JavaScript寄生组合式继承实例详解
2018/01/06 Javascript
jquery+css3实现熊猫tv导航代码分享
2018/02/12 jQuery
JS中常用的消息框总结
2018/02/24 Javascript
vue实现五子棋游戏
2020/05/28 Javascript
ant-design表单处理和常用方法及自定义验证操作
2020/10/27 Javascript
[01:23]2014DOTA2国际邀请赛 球迷无处不在Ti现场世界杯受关注
2014/07/10 DOTA
Python计时相关操作详解【time,datetime】
2017/05/26 Python
浅谈Python2获取中文文件名的编码问题
2018/01/09 Python
python微信跳一跳游戏辅助代码解析
2018/01/29 Python
python实现机器学习之多元线性回归
2018/09/06 Python
Django实现web端tailf日志文件功能及实例详解
2019/07/28 Python
css3发光搜索表单分享
2014/04/11 HTML / CSS
武汉高蓝德国际.net机试
2016/06/24 面试题
西北政法大学自主招生自荐信
2014/01/29 职场文书
银行求职信
2014/05/31 职场文书
学校督导评估方案
2014/06/10 职场文书
活动总结范文
2014/08/30 职场文书
社区领导班子四风问题原因分析及整改措施
2014/09/28 职场文书
协议书范文
2015/01/27 职场文书
防暑降温通知书
2015/04/27 职场文书
vue+element ui实现锚点定位
2021/06/29 Vue.js
Python列表的索引与切片
2022/04/07 Python