python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片

首先 此功能 是基于 flask框架实现邮件发送

本人实现的QQ邮件发送。

一、qq邮箱设置

 1.先进入qq邮件中进行配置

python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片_第1张图片

python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片_第2张图片

python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片_第3张图片

二、flask 进行设置

1.按照 flask-mail这个扩展包

执行命令 pip install flask-mail

导入 

from flask_mail import Mail,Message
import config 导入配置文件

实例化配置

mail = Mail()
app = Flask(__name__)
#引入加载配置
app.config.from_object(config)
mail.init_app(app)
MAIL_DEBUG = True             # 开启debug,便于调试看信息
MAIL_SUPPRESS_SEND = False    # 发送邮件,为True则不发送
MAIL_SERVER = 'smtp.qq.com'   # 邮箱服务器
MAIL_PORT = 465               # 端口
MAIL_USE_SSL = True           # 重要,qq邮箱需要使用SSL
MAIL_USE_TLS = False          # 不需要使用TLS
MAIL_USERNAME = '[email protected]'  # 填邮箱
MAIL_PASSWORD = '.....'      # 填授权码
FLASK_MAIL_SENDER = '皮皮虾!我们走!<[email protected]>'   #邮件发送方
FLASK_MAIL_SUBJECT_PREFIX = '[皮皮虾!我们走]'     #邮件标题
MAIL_DEFAULT_SENDER = '[email protected]'  # 填邮箱,默认发送者**加粗样式**

发送内容路由

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

#发送附带附件的邮件 --压缩包图片都可以 亲测
@app.route('/email_send_attach/')
def email_send_attach():
    message = Message(subject='hello flask-mail',recipients=['[email protected]'],body='我是一个附件邮件')
    try:

        # with open(filename,'rb') as fp:
        #     message.attach("test.jpg", "image/jpg", fp.read())

        with app.open_resource('./test.zip') as fp:
            # attach("文件名", "类型", 读取文件)
            message.attach("test.zip", 'application/octet-stream', fp.read())

        mail.send(message)
        return '发送成功,请注意查收~'
    except Exception as e:
        print(e)
        return '发送失败'

看看邮箱效果:

文件

python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片_第4张图片

  内容文本

python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片_第5张图片

图片

python flask-mail--实现邮件发送功能--带发送附件,压缩包,图片_第6张图片

你可能感兴趣的:(python,python,flask,开发语言)