Flask之邮件扩展

4.4 Flask—Mail

在开发过程中,很多应用程序都需要通过邮件提醒用户,Flask的扩展包Flask-Mail通过包装了Python内置的smtplib包,可以用在Flask程序中发送邮件。

Flask-Mail连接到简单邮件协议(Simple Mail Transfer Protocol,SMTP)服务器,并把邮件交给服务器发送。

如下示例,通过开启QQ邮箱SMTP服务设置,发送邮件。

from flask import Flask
from flask_mail import Mail, Message

app = Flask(__name__)
#配置邮件:服务器/端口/传输层安全协议/邮箱名/密码
app.config.update(
    DEBUG = True,
    MAIL_SERVER=‘smtp.qq.com‘,
    MAIL_PROT=465,
    MAIL_USE_TLS = True,
    MAIL_USERNAME = ‘[email protected]‘,
    MAIL_PASSWORD = ‘goyubxohbtzfbidd‘,
)

mail = Mail(app)

@app.route(‘/‘)
def index():
 # sender 发送方,recipients 接收方列表
    msg = Message("This is a test ",sender=‘[email protected]‘, recipients=[‘[email protected]‘,‘[email protected]‘])
    #邮件内容
    msg.body = "Flask test mail"
    #发送邮件
    mail.send(msg)
    print "Mail sent"
    return "Sent Succeed"

if __name__ == "__main__":
    app.run()

原文地址:https://www.cnblogs.com/alexzhang92/p/9552745.html

时间: 2024-12-11 00:17:02

Flask之邮件扩展的相关文章

Flask 的 请求扩展 与 中间件

Flask 的 请求扩展 与 中间件 flask 可以通过 扩展(装饰器)来实现类似于django 中间件的功能 类似于django 的中间件, 在执行视图函数之前, 之后的执行某些功能 1 @app.before_first_request 执行一次,第一次请求结束,在第一批函数执行后 就不再执行(状态改为False) @app.before_first_request def before_first_request1(): print('before_first_request1') 2

#WEB安全基础 : HTTP协议 | 0x12 MIME多用途邮件扩展以及多部分对象集合

我们是怎么让邮件里又有图片又有文字的? 文字和图片是两个不同的类型,而邮件又是一个类型. C语言的结构体允许用户定义一个含有多类型的自定义类型 像这样,看不懂没关系,你只要知道邮件里有多个类型就可以了  typedef struct myType = { int num; char words[20]; }; 那么在HTTP传输里有什么机制支持邮件可以使用多种类型呢? 猜对了,就是MIME(多用途邮件扩展) 在MIME中会使用多部分对象集合的方法来容纳不同的数据 相应地,HTTP协议也采用了多部

Flask入门邮件同步与异步发送(九)

? 应用场景: 用户在注册或者密码丢失等过程中,账号绑定邮箱,用户在进行身份认证的过程中,电子邮箱确实是一种很常用的方式,Python中提供了smtplib可以实现发送电子邮件功能,Flask框架也有对应的flask-email库,扩展对电子发送的支持 安装 pip3 install flask-mail 导入及初始化 from flask_mail import Mail mail=Mail(app) Flask-mail可以连接SMTP服务器,并把邮件利用这个服务器发送出去. Flask-m

PHP邮件扩展:mailpp

你还在使用PHPMailer吗?out了吧! mailpp是用C++写成的一个PHP扩展,专门用来执行发送邮件的任务. class mailpp { public function __construct(); public function set_host_port($host,$port) ; public function set_user_password($user,$password); public function set_content_type($content_type)

flask 之(四) --- 扩展|拆分|钩子

扩展 蓝图内置扩展(实现的是路由的拆分) 1 '''----------- app.py -------------''' 2 from flask import Flask 3 from users_views import blue1 4 from orders_views import blue2 5 6 app = Flask(__name__) 7 8 # 路由注册 9 app.register_blueprint(blueprint=blue1) 10 app.register_bl

Flask 扩展 缓存

如果同一个请求会被多次调用,每次调用都会消耗很多资源,并且每次返回的内容都相同,就该使用缓存了 自定义缓存装饰器 在使用Flask-Cache扩展实现缓存功能之前,我们先来自己写个视图缓存装饰器,方便我们来理解视图缓存的实现.首先,我们要有一个缓存,Werkzeug框架中的提供了一个简单的缓存对象SimpleCache,它是将缓存项存放在Python解释器的内存中,我们可以用下面的代码获取SimpleCache的缓存对象: from werkzeug.contrib.cache import S

2.6、Flask扩展

Flask 被设计为可扩展形式,故而没有提供一些重要的功能,例如数据库和用户认证,所以开发者可以自由选择最适合程序的包,或者按需求自行开发. 社区成员开发了大量不同用途的扩展,如果这还不能满足需求,你还可使用所有 Python 标准包或代码库.为了让你知道如何把扩展整合到程序中,接下来我们将在 hello.py 中添加一个扩展,使用命令行参数增强程序的功能. 使用Flask-Script支持命令行选项 Flask 的开发 Web 服务器支持很多启动设置选项,但只能在脚本中作为参数传给 app.r

Flask从入门到精通之flask扩展

Flask被设计成可扩展形式,因此并没有提供一些重要的功能,比如数据库和用户认证,所以开发者可以自由选择最适合程序的包,或者按需求自行开发.社区成员开发了大量不同用途的扩展,如果这还不能满足需求,你还可使用所有Python 标准包或代码库.为了让你知道如何把扩展整合到程序中,接下来我们将在hello.py 中添加一个扩展,使用命令行参数增强程序的功能. 使用Flask-Script支持命令行选项 Flask 的开发Web 服务器支持很多启动设置选项,但只能在脚本中作为参数传给app.run()函

第二篇 Flask基础篇之(闪现,蓝图,请求扩展,中间件)

本篇主要内容: 闪现 请求扩展 中间件 蓝图 写装饰器,常用 functools模块,帮助设置函数的元信息 import functools def wrapper(func): @functools.wraps(func) def inner(*args,**kwargs): return func(*args,**kwargs) return inner @wrapper def f1(): pass print(f1.__name__) # f1 续接第一篇 8.Flask之闪现 # 首先