Python群发邮件实例代码


以下是一个使用Python群发邮件的实例代码。这个示例使用了`smtplib`和`email.mime.text`库来发送纯文本邮件。请确保你已经有了SMTP服务器的访问权限,包括服务器地址、端口、你的邮箱地址和密码(某些SMTP服务器可能支持使用应用密码而非邮箱密码)。


import smtplib
from email.mime.text import MIMEText
from email.header import Header

# 发件人邮箱和密码(这里应使用你的邮箱和密码)
sender_email = 'your_email@example.com'
sender_password = 'your_password'  # 注意:这里应该是你的邮箱应用密码或授权码

# SMTP服务器和端口(以QQ邮箱为例)
smtp_server = 'smtp.qq.com'
smtp_port = 465  # 使用SSL加密连接

# 邮件主题和内容
subject = '测试邮件'
body = '这是一封测试邮件,用于测试Python群发邮件功能。'

# 接收者邮箱列表
receivers = ['receiver1@example.com', 'receiver2@example.com']

# 创建邮件对象
message = MIMEText(body, 'plain', 'utf-8')
message['From'] = Header(sender_email)
message['To'] = "; ".join([Header(receiver) for receiver in receivers])
message['Subject'] = Header(subject, 'utf-8')

try:
    # 连接到SMTP服务器
    server = smtplib.SMTP_SSL(smtp_server, smtp_port)
    server.login(sender_email, sender_password)

    # 发送邮件
    server.sendmail(sender_email, receivers, message.as_string())
    print("邮件发送成功!")

except Exception as e:
    print(f"邮件发送失败:{e}")

finally:
    # 关闭SMTP服务器连接
    server.quit()

**注意**:

- 请将`your_email@example.com`和`your_password`替换为你的邮箱地址和密码(或应用密码)。

- 不同的SMTP服务器可能有不同的端口号和安全设置(如SSL或TLS),请根据你的SMTP服务器要求调整。

- 接收者邮箱列表`receivers`可以根据需要添加或修改。

- 考虑到安全性,不建议在代码中直接硬编码邮箱密码。在实际应用中,可以考虑使用配置文件、环境变量或密钥管理服务来存储敏感信息。