from flask import Flask, jsonify
from flask.ext.mail import Mail, Message
import os
app = Flask(__name__)
app.config.update(
DEBUG = True,
MAIL_SERVER= '******', # 邮箱服务器
MAIL_PROT= 25, # 每种邮箱服务器都有自己的端口
MAIL_USE_TLS = True,
MAIL_USE_SSL = False,
MAIL_USERNAME = '******', # 邮箱账户
MAIL_PASSWORD = '******', # 邮箱密码
MAIL_DEBUG = True
)
mail = Mail(app)
@app.route('/sendEmail/')
def sendEmail():
# sender 发送方,recipients 接收方列表
msg = Message("Flask邮件发送服务",sender= "******", recipients=['******','******','******'])
# 邮件正文
msg.body = "This is a first email"
# 邮件附件
with app.open_resource("./全国天气数据.txt") as fp:
msg.attach("全国天气数据.txt", "text/plain", fp.read())
mail.send(msg)
return jsonify(dict(msg="Success"))
if __name__ == "__main__":
app.run()msg.attach("文件名", "媒体类型", "实际文件数据")
Message类的attach()方法接受三个定义附件的参数: 文件名就是收件人看到的与附件关联的名称。 媒体类型定义了这种附件的类型,这有助于电子邮件读者适当地渲染它。 最后一个参数包含附件内容的字符串或字节序列。
文件类型可查:
www.w3school.com.cn/media/media…
防止访问阻塞,可以异步发送邮件:blog.csdn.net/weixin_3638…