aliyun: 企业邮箱发件配置 - 代码/程序/python/smtp/pop3

使用代码,程序发邮件配置

🕐

添加账号

这里假设你已经有了一个企业账户(目前可以免费申请)

打开链接 https://qiye.aliyun.com/alimail/auth/login

添加用户: cc-notify@js.work

打开设置

这个设置,不太好找,可以参考链接中找到截图

发件示例代码

import os
import smtplib
from email.mime.text import MIMEText
from datetime import datetime


def main():
    """发送测试邮件"""
    # 从环境变量读取配置
    mail_host = os.getenv("MAIL_HOST", "smtp.mxhichina.com")
    mail_port = int(os.getenv("MAIL_PORT", "465"))
    mail_user = os.getenv("MAIL_USER")
    mail_pass = os.getenv("MAIL_PASS")
    sender = mail_user
    receivers = os.getenv("MAIL_RECEIVERS", "").split(",")

    if not all([mail_user, mail_pass, receivers]):
        print("错误: 请设置环境变量 MAIL_USER, MAIL_PASS, MAIL_RECEIVERS")
        return

    # 邮件内容
    mail_content = "你好,这是阿里云企业邮箱通过Python发送的纯文本测试邮件!\n测试内容:成功发送"
    msg = MIMEText(mail_content, "plain", "utf-8")

    # 设置邮件主题(带时间戳)
    timestamp = datetime.now().strftime("%Y年%m月%d日 %H时%M分%S秒")
    msg["Subject"] = f"阿里云企业邮箱测试邮件-aric-{timestamp}"
    msg["From"] = sender
    msg["To"] = ", ".join(receivers)

    try:
        # 建立SSL连接发送
        smtp_obj = smtplib.SMTP_SSL(mail_host, mail_port)
        smtp_obj.login(mail_user, mail_pass)
        smtp_obj.sendmail(sender, receivers, msg.as_string())
        smtp_obj.quit()
        print("邮件发送成功!")
    except Exception as e:
        print(f"发送失败,错误信息:{e}")


if __name__ == "__main__":
    main()