在Python中,可以使用smtplib库来通过SMTP协议向多个用户发送电子邮件。以下是一个示例代码,演示了如何实现这个功能:
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_email(subject, message, recipients):
# 邮件内容
msg = MIMEText(message, 'plain', 'utf-8')
msg['Subject'] = Header(subject, 'utf-8')
msg['From'] = 'sender@example.com'
msg['To'] = ', '.join(recipients)
# SMTP服务器配置
smtp_server = 'smtp.example.com'
smtp_port = 587
smtp_username = 'your_username'
smtp_password = 'your_password'
# 连接SMTP服务器并发送邮件
try:
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
server.login(smtp_username, smtp_password)
server.sendmail('sender@example.com', recipients, msg.as_string())
server.quit()
print('邮件发送成功')
except Exception as e:
print('邮件发送失败:', str(e))
# 调用函数发送邮件
subject = '测试邮件'
message = '这是一封测试邮件。'
recipients = ['user1@example.com', 'user2@example.com', 'user3@example.com']
send_email(subject, message, recipients)
在上面的代码中,首先导入了smtplib库和相关的类。然后定义了一个send_email
函数,该函数接受邮件的主题、内容和收件人列表作为参数。
在函数内部,创建了一个MIMEText对象,用于表示邮件的内容。设置了邮件的主题、发件人和收件人。然后配置了SMTP服务器的相关信息,包括服务器地址、端口号、用户名和密码。
最后,通过调用smtplib.SMTP
函数连接到SMTP服务器,并使用starttls
方法启用TLS加密。然后使用login
方法登录SMTP服务器,使用sendmail
方法发送邮件。最后调用quit
方法关闭与SMTP服务器的连接。
你可以根据实际情况修改邮件内容、SMTP服务器的配置和收件人列表。这个示例代码可以帮助你在Python中通过smtplib向多个用户发送电子邮件。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云