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打印斐波拉契数列实例
Jul 07 Python
windows系统下Python环境搭建教程
Mar 28 Python
详谈在flask中使用jsonify和json.dumps的区别
Mar 26 Python
Python-OpenCV基本操作方法详解
Apr 02 Python
python梯度下降法的简单示例
Aug 31 Python
Python调用服务接口的实例
Jan 03 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 Python
Django项目uwsgi+Nginx保姆级部署教程实现
Apr 19 Python
Python如何急速下载第三方库详解
Nov 02 Python
python实现三壶谜题的示例详解
Nov 02 Python
Django中ORM的基本使用教程
Dec 22 Python
Python 数据可视化之Matplotlib详解
Nov 02 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
操作Oracle的php类
2006/10/09 PHP
php下过滤HTML代码的函数
2007/12/10 PHP
Laravel框架中扩展函数、扩展自定义类的方法
2014/09/04 PHP
PHP+MySql+jQuery实现的"顶"和"踩"投票功能
2016/05/21 PHP
php加密之discuz内容经典加密方式实例详解
2017/02/04 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
JS 文字符串转换unicode编码函数
2009/05/30 Javascript
jquery 插件学习(六)
2012/08/06 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
js获取IP和PcName(IE)在vs中可用
2013/08/02 Javascript
利用js动态添加删除table行的示例代码
2013/12/16 Javascript
JS和Jquery获取和修改label的值的示例代码
2014/01/15 Javascript
浅析JQuery中的html(),text(),val()区别
2014/09/01 Javascript
jQuery自定义添加"$"与解决"$"冲突的方法
2015/01/19 Javascript
javascript创建cookie、读取cookie
2016/03/31 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
2021/02/25 Javascript
js轮播图无缝滚动效果
2017/06/17 Javascript
vue中v-for通过动态绑定class实现触发效果
2018/12/06 Javascript
使用taro开发微信小程序遇到的坑总结
2019/04/08 Javascript
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
一篇文章带你搞懂Vue虚拟Dom与diff算法
2020/08/25 Javascript
浅谈python中的__init__、__new__和__call__方法
2017/07/18 Python
Python单元测试工具doctest和unittest使用解析
2019/09/02 Python
wxPython实现画图板
2020/08/27 Python
Python如何实现邮件功能
2020/05/27 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
2021/02/07 Python
联想美国官方商城:Lenovo美国
2017/06/19 全球购物
留学自荐信
2013/10/10 职场文书
供货协议书范本
2014/04/22 职场文书
社区学习雷锋活动总结
2014/04/25 职场文书
计算机专业自荐信范文
2015/03/26 职场文书
萤火虫之墓观后感
2015/06/05 职场文书
小学毕业感言200字
2015/07/30 职场文书
幼儿教师继续教育培训心得体会
2016/01/19 职场文书
postgresql使用filter进行多维度聚合的解决方法
2021/07/16 PostgreSQL