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 相关文章推荐
简单解析Django框架中的表单验证
Jul 17 Python
Python中selenium实现文件上传所有方法整理总结
Apr 01 Python
浅谈numpy库的常用基本操作方法
Jan 09 Python
如何利用Boost.Python实现Python C/C++混合编程详解
Nov 08 Python
python selenium执行所有测试用例并生成报告的方法
Feb 13 Python
让你Python到很爽的加速递归函数的装饰器
May 26 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
Jan 09 Python
Python3如何在Windows和Linux上打包
Feb 25 Python
python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例
Feb 28 Python
浅谈keras中的Merge层(实现层的相加、相减、相乘实例)
May 23 Python
Python扫描端口的实现
Jan 25 Python
Python自动化测试基础必备知识点总结
Feb 07 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树的代码,可以嵌套任意层
2006/10/09 PHP
PHP实现的功能是显示8条基色色带
2006/10/09 PHP
修改php.ini实现Mysql导入数据库文件最大限制的修改方法
2007/12/11 PHP
PHP mb_convert_encoding文字编码的转换函数介绍
2011/11/10 PHP
PHP curl 抓取AJAX异步内容示例
2014/09/09 PHP
PHP清除缓存的几种方法总结
2017/09/12 PHP
ppk谈JavaScript style属性
2008/10/10 Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
2010/07/25 Javascript
jQuery根据用户电脑是mac还是pc加载对应样式的方法
2015/06/26 Javascript
jquery实现模拟百分比进度条渐变效果代码
2015/10/29 Javascript
nodejs个人博客开发第七步 后台登陆
2017/04/12 NodeJs
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
基于js粘贴事件paste简单解析以及遇到的坑
2017/09/07 Javascript
Electron-vue脚手架改造vue项目的方法
2018/10/22 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
layui清空,重置表单数据的实例
2019/09/12 Javascript
微信小程序实现搜索功能
2020/03/10 Javascript
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python open()文件处理使用介绍
2014/11/30 Python
Python文本相似性计算之编辑距离详解
2016/11/28 Python
深入理解NumPy简明教程---数组3(组合)
2016/12/17 Python
django 按时间范围查询数据库实例代码
2018/02/11 Python
django与小程序实现登录验证功能的示例代码
2019/02/19 Python
基于wxPython的GUI实现输入对话框(1)
2019/02/27 Python
python利用Opencv实现人脸识别功能
2019/04/25 Python
对Python _取log的几种方式小结
2019/07/25 Python
python opencv实现gif图片分解的示例代码
2019/12/13 Python
Python3 集合set入门基础
2020/02/10 Python
2019史上最全Database工程师题库
2015/12/06 面试题
什么叫做SQL注入,如何防止
2016/10/04 面试题
高校生生产实习自我鉴定
2013/09/21 职场文书
初中校园之声广播稿
2014/01/15 职场文书
电子信息工程专业推荐信
2014/02/14 职场文书
改进工作作风心得体会
2016/01/23 职场文书
如何书写邀请函?
2019/06/24 职场文书
SQL Server删除表中的重复数据
2022/05/25 SQL Server