python flask配置邮箱发送功能,使用flask_mail模块

news/2024/7/3 0:43:38
  • 🌈所属专栏:【Flask】
  • 作者主页:  Mr.Zwq
  • ✔️个人简介:一个正在努力学技术的Python领域创作者,擅长爬虫,逆向,全栈方向,专注基础和实战分享,欢迎咨询!

您的点赞、关注、收藏、评论,是对我最大的激励和支持!!!🤩🥰😍

目录

前言

安装

使用

config.py 配置文件内容

main.py 文件内容

效果

 1.纯文本格式邮件

 2.html格式邮件

总结


前言

        通过 flask_mail 模块,只需进行简单配置后,使用两三行代码就可以快速实现发送邮箱的功能,十分方便。


安装

pip install flask_mail

使用

config.py 配置文件内容

class Config():
    # 邮箱配置
    MAIL_SERVER = "smtp.qq.com"    # 邮箱服务器
    MAIL_USE_SSL = True
    MAIL_PORT = 465
    MAIL_USERNAME = "XXXXXX@qq.com"          # 发送方邮箱
    MAIL_DEFAULT_SENDER = "XXXXXX@qq.com"    # 发送方邮箱
    MAIL_PASSWORD = "XXXXXX"                 # 发送方邮箱的秘钥
    

 关于邮箱秘钥的获取,可以参考之前发布过的文章:python快速实现发送邮件功能-CSDN博客

main.py 文件内容

from flask import Flask
from config import Config
from flask_mail import Mail, Message

app = Flask(__name__)

# 读取配置文件
app.config.from_object(Config)
# 创建邮箱对象
mail = Mail(app)


@app.route('/')
def index():
    # 接收方邮箱
    user_email = 'XXXXXX@qq.com'
    # 1.纯文本格式邮件,用body参数
    message1 = Message(subject='邮箱主题', recipients=[user_email], body='哈哈哈')
    # 2.html格式邮件(即可以设置字体样式,携带图片等等),用html参数
    message2 = Message(subject='邮箱主题', recipients=[user_email],
                      html='<p style="color:red">哈哈哈</p><img src="https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png">')
    mail.send(message1)
    mail.send(message2)
    return '邮件发送成功'


if __name__ == '__main__':
    app.run(debug=True)

效果

 1.纯文本格式邮件


 2.html格式邮件


总结

感谢观看,原创不易,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹🌹🌹

👍🏻也欢迎你,关注我。👍🏻

如有疑问,可在评论区留言哦~


http://lihuaxi.xjx100.cn/news/2215573.html

相关文章

Mac vscode could not import github.com/gin-gonic/gin

问题背景&#xff1a; 第一次导入一个go的项目就报红 问题分析&#xff1a; 其实就是之前没有下载和导入gin这个web框架包 gin是一个golang的微框架&#xff0c;封装比较优雅&#xff0c;API友好&#xff0c;源码注释比较明确。 问题解决&#xff1a; 依次输入以下命令。通…

【Echarts系列】水平柱状图

【Echarts系列】水平柱状图 序示例数据格式代码 序 为了节省后续开发学习成本&#xff0c;这个系列将记录我工作所用到的一些echarts图表。 示例 水平柱状图如图所示&#xff1a; 数据格式 data [{name: 于洪区,value: 2736},{name: 新民市,value: 2844},{name: 皇姑区,…

通俗范畴论2 有向图与准范畴

退一步海阔天空&#xff0c;在正式进入范畴论之前&#xff0c;我们可以重新审视一下我们是如何认识世界的&#xff0c;有了这个对人类认识世界过程的底层理解&#xff0c;可以帮助我们更好地理解范畴论。 对于人类认识世界&#xff0c;最神奇的一点就是这个世界居然是可以认识…

20.1 JSON-JSON接口以及在Go语言中使用JSON

1. 简介 JSON即JavaScript对象表示法(JavaScript Object Notation)&#xff0c;是一种用于存储和交换数据的格式&#xff0c;是一种可供人类阅读和理解的纯文本格式。 JSON既可以键值对的形式&#xff0c;也可以数组的形式&#xff0c;表示数据。 JSON最初是JavaScript的一个…

【数据结构】初识集合深入剖析顺序表(Arraylist)

【数据结构】初识集合&深入剖析顺序表&#xff08;Arraylist&#xff09; 集合体系结构集合的遍历迭代器增强for遍历lambda表达式 List接口中的增删查改List的5种遍历ArrayList详解ArrayList的创建ArrayList的增删查改ArrayList的遍历ArrayList的底层原理 &#x1f680;所属…

在Python中实现排序算法:以冒泡排序和快速排序为例

在Python中实现排序算法&#xff0c;如冒泡排序和快速排序&#xff0c;是算法和数据结构学习中的基础内容。下面我将从技术难点、面试官关注点、回答吸引力以及代码举例四个方面进行详细描述。 一、技术难点 冒泡排序&#xff1a; 双重循环&#xff1a;冒泡排序需要两层循环&…

算法分析与设计(持续更新……)

&#x1f4da;不进&#x1f9e0; 一、入门 &#x1f4d9; 时间复杂度 ✨ 排序的时间复杂度 &#x1f4d9; 算法伪码 &#x1f4d9; 函数的渐近界 ✨ 渐近上界大O &#x1f468;‍&#x1f3eb; 笛霸格 教程视频 ✨ 渐近下界 Ω &#x1f468;‍&#x1f3eb; 笛霸格 教…

C++ 45 之 赋值运算符的重载

#include <iostream> #include <string> #include <cstring> using namespace std;class Students05{ public:int m_age;char* m_name;Students05(){}Students05(const char* name,int age){// 申请堆空间保存m_name;this->m_name new char[strlen(name)…