菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
3370
0

Python 发送邮件

原创
05/13 14:22
阅读数 2233

Python 原生

import smtplib 
from email.message import EmailMessage 

# 发送文本
with open('test') as fp: 
    # 创建一条 text/plain 信息
    msg = EmailMessage()
    msg.set_content(fp.read())

# 发送 html
# msg.add_alternative('<h1>Hello</h1>', subtype='html') 

msg['Subject'] = '标题' 
msg['From'] = '发送方邮件地址' 
msg['To'] = '接受方邮件地址' 

# 通过 ssl 加密方式发送
with smtplib.SMTP_SSL('smtp服务器地址', 465) as s: 
    s.login('发送方邮件地址', '发送方邮件密码或授权码') 
    s.send_message(msg)

# -----------------------------------------------------------

# 通过 tls 加密方式发送
with smtplib.SMTP('smtp服务器地址', 587) as s:

    s.starttls()
    s.login('发送方邮件地址', '发送方邮件密码或授权码') 
    s.send_message(msg)

Flask-mail

from flask import Flask
from flask_mail import Mail, Message

app = Flask(__name__)

app.config.update(
        MAIL_SERVER = os.getenv('MAIL_SERVER'),
        MAIL_PORT = 465,
        MAIL_USE_SSL = True,
        MAIL_USERNAME = os.getenv('MAIL_USERNAME'),
        MAIL_PASSWORD = os.getenv('MAIL_PASSWORD'),
        MAIL_DEFAULT_SENDER=('发送人', os.getenv('MAIL_USERNAME'))
    )

mail = Mail(app)

def send_mail(subject, to, body, html=None):
    message = Message(subject, recipients=[to], body=body, html=html)
    mail.send(message)

发表评论

0/200
3370 点赞
0 评论
收藏
为你推荐 换一批