以下是一个使用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`可以根据需要添加或修改。
- 考虑到安全性,不建议在代码中直接硬编码邮箱密码。在实际应用中,可以考虑使用配置文件、环境变量或密钥管理服务来存储敏感信息。