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实现斐波那契(Fibonacci)函数
Mar 25 Python
Python 基础之字符串string详解及实例
Apr 01 Python
python如何实现int函数的方法示例
Feb 19 Python
python解决字符串倒序输出的问题
Jun 25 Python
python实现点对点聊天程序
Jul 28 Python
python在html中插入简单的代码并加上时间戳的方法
Oct 16 Python
django+mysql的使用示例
Nov 23 Python
基于python解线性矩阵方程(numpy中的matrix类)
Oct 21 Python
python调用HEG工具批量处理MODIS数据的方法及注意事项
Feb 18 Python
python实现猜单词游戏
May 22 Python
pycharm如何使用anaconda中的各种包(操作步骤)
Jul 31 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
解析Extjs与php数据交互(增删查改)
2013/06/25 PHP
学习php过程中的一些注意点的总结
2013/10/25 PHP
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
2014/11/29 PHP
Zend Framework实现Zend_View集成Smarty模板系统的方法
2016/03/05 PHP
php-beanstalkd消息队列类实例分享
2017/07/19 PHP
40个新鲜出炉的jQuery 插件和免费教程[上]
2012/07/24 Javascript
JavaScript获取指定元素位置的方法
2015/04/08 Javascript
js实现点击获取验证码倒计时效果
2021/01/28 Javascript
js密码强度检测
2016/01/07 Javascript
详解jQuery中的empty、remove和detach
2016/04/11 Javascript
Move.js入门
2017/02/08 Javascript
javascript实现视频弹幕效果(两个版本)
2019/11/28 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
2020/06/01 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
2020/11/05 Javascript
8个非常实用的Vue自定义指令
2020/12/15 Vue.js
详解Python的Flask框架中生成SECRET_KEY密钥的方法
2016/06/07 Python
使用PyInstaller将Python程序文件转换为可执行程序文件
2016/07/08 Python
python+unittest+requests实现接口自动化的方法
2018/11/29 Python
Django组件content-type使用方法详解
2019/07/19 Python
Django 项目布局方法(值得推荐)
2020/03/22 Python
基于CSS3 animation动画属性实现轮播图效果
2017/09/12 HTML / CSS
日本面向世界,国际级的免税在线购物商城:DOKODEMO
2017/02/01 全球购物
英国高街电视:High Street TV
2018/05/22 全球购物
三星英国官网:Samsung英国
2018/09/25 全球购物
英国性能汽车零件和发动机配件在线:Maxpeedingrods
2019/11/05 全球购物
澳大利亚家用电器在线商店:Billy Guyatts
2020/05/05 全球购物
如何用JQuery进行表单验证
2013/05/29 面试题
幼儿教师自我鉴定
2013/11/02 职场文书
寄语十八大感言
2014/02/07 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
退税申请报告怎么写
2015/05/18 职场文书
如何制定销售人员薪酬制度?
2019/07/09 职场文书
辞职报告(范文三篇)
2019/08/27 职场文书
解决Maven项目中 Invalid bound statement 无效的绑定问题
2021/06/15 Java/Android
苹果macOS 13开发者预览版Beta 8发布 正式版10月发布
2022/09/23 数码科技