zoukankan      html  css  js  c++  java
  • Flask 发送电子邮件

    使用163邮箱作为邮件发送邮箱,使用qq邮箱接收电子邮件

    from flask import Flask
    from flask_mail import Mail, Message
     
    app = Flask(__name__)
    # 给flask配置文件添加配置信息
    # 这个配置信息类似一个字典,可以追加数据
    app.config.update(
        DEBUG = True,
        MAIL_SERVER='smtp.163.com',
        MAIL_PORT=465,
        MAIL_USE_TLS = False, # SSL(Security Socket Layer,安全套接字层)和TLS(Transport Layer Sceurity,传输层安全)是两种常用的电子邮件安全协议
        MAIL_USE_SSL = True,
        MAIL_USERNAME = 'xxx@163.com',
        MAIL_PASSWORD = 'xxx', # 授权码而不是邮箱登录密码。
    )
     
    # 创建邮件对象工具
    mail = Mail(app)
    
    # 异步发送电子邮件
    from threading import Thread
    def send_async_email(app,msg):
        mail.send(msg)
    
    def send_email(subject, sender, recipients, text_body, html_body):
        msg = Message(subject, sender=sender, recipients=recipients) # # sender 发送方邮箱,recipients 接受方邮箱列表
        msg.body = text_body # 纯文本信息
        msg.html = html_body # HTML格式的信息
        Thread(target=send_async_email,args=(app,msg)).start()
     
    @app.route('/email')
    def index():
        send_email('test subject',app.config['MAIL_USERNAME'],['xxx@qq.com'], 'text body','<b>HTML</b> body')
        return '发送成功'
       
     
    if __name__ == '__main__':
        app.run(port=5001, debug=True)
    
  • 相关阅读:
    dsu on tree
    bzoj3527 [Zjoi2014]力
    bzoj3527 [Zjoi2014]力
    114.遍历文件夹并批量修改文件名
    25.八皇后问题
    24.C语言最全排序方法小结(不断更新)
    112.备忘录设计模式
    110.文件搜索,系统大小获取,以及病毒行为
    109.vprintf vfprintf vscanf vfscanf
    108.sqllite3(C语言数据库库)详解
  • 原文地址:https://www.cnblogs.com/leimu/p/13802249.html
Copyright © 2011-2022 走看看