flask_mail发送邮件(附源码)

19 篇文章 0 订阅

文章介绍如何用flask_mail发送QQ邮件,发送其它邮箱简单的更改相应配置即可 

传送门:源代码

源代码地址:https://github.com/1417766861/flask_mail  

 

首先展示一下效果:

发送普通文本邮件:

发送一个html模板的邮件:

发送一个附带附件的邮件:

 

看到结果,是否心动了呢?

1. 通过flask_mail  发送QQ邮件,这里使用到flask_mail插件使用: 

 

进入自己虚拟环境:通过指令安装即可。

pip install flask_mail

 

2.初始化mail对象:

 

邮件是通过一个 Mail 实例进行管理:

from flask import Flask
from flask_mail import Mail

app = Flask(__name__)
mail = Mail(app)

在这个例子中所有的邮件将会使用传入到 Mail 实例中的应用程序的配置项进行发送。

或者你也可以在应用程序配置的时候设置你的 Mail 实例,通过使用 init_app 方法:

mail = Mail()

app = Flask(__name__)
mail.init_app(app)

 

3.flask_mail的配置:

进入QQ邮箱,进入账户,开启相关服务




qq发送服务器地址:

4.填写config文件的  相关配置:

由于QQ邮箱不支持非加密的协议,那么使用加密协议,分为两种加密协议,选择其中之一即可

1.mail_use_tls    端口号是587

2.mail_use_ssl    端口号是465
我选择的mail_use_tls  协议,所以MAIL_USE_TLS设置为True,端口号587

MAIL_SERVER = "smtp.qq.com"
MAIL_PORT = "587"
MAIL_USE_TLS = True
MAIL_USERNAME = "xxxxxx@qq.com"
MAIL_PASSWORD = "你的授权码--即第三步,点击生成相应的授权码"

MAIL_DEFAULT_SENDER = "xxxxxx.hot@qq.com"//默认发送者

 

5.定义邮箱发送视图函数,填写Message相关的内容包括标题,接收者,内容等等。。。。。例如:

#发送文本
@app.route('/email_send_charactor/')
def email_send_charactor():
    message = Message(subject='hello flask-mail',recipients=['1417766861@qq.com'],body='flask-mail测试代码')
    try:
        mail.send(message)
        return '发送成功,请注意查收~'
    except Exception as e:
        print(e)
        return '发送失败'

 

6.接下来就可以进行邮箱发送了

我已经接收成功了

我已经收到我的邮件呢?   那么你呢?赶紧试试吧~

邮件可以用户,用户认证,授权,找回密码,用户注册等等功能。

 

如果文章对你有所帮助,别忘了Star一下辛苦的作者哈。

源代码地址:https://github.com/1417766861/flask_mail  

  • 8
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Flask-Mail是一个用于发送电子邮件的Flask扩展。它可以方便地集成到Flask应用程序中,以便发送电子邮件。\[1\]在使用Flask-Mail时,需要进行一些配置,如设置邮件服务器、端口、用户名、密码等。\[2\]在发送邮件时,可以使用Flask-Mail的Message类来创建邮件对象,并设置邮件的标题、收件人、正文等内容。然后使用mail.send()方法发送邮件。\[2\]在使用Flask-Mail发送邮件时,可能会遇到一些异常,如ConnectionRefusedError、smtplib.SMTPAuthenticationError和smtplib.SMTPException等。可以在发送邮件的代码中进行异常捕获,并根据具体的异常类型进行相应的处理。\[3\] #### 引用[.reference_title] - *1* [Flask框架——Flask-Mail邮件](https://blog.csdn.net/weixin_52122271/article/details/125992503)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Flask(十五)——发送邮件](https://blog.csdn.net/weixin_44491423/article/details/123228624)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Flask-Mail 分析](https://blog.csdn.net/m0_37573740/article/details/130996267)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值