使用 Python smtplib 向多个收件人发送电子邮件
当尝试使用 Python 的 smtplib.sendmail 向多个收件人发送电子邮件时,用户经常会遇到问题。尽管在电子邮件标头中指定了多个地址,但只有第一个收件人收到消息。
这是由于 email.Message 模块和 smtplib.sendmail() 函数之间的格式期望差异造成的。 email.Message 模块接受标头中以逗号分隔的电子邮件地址,而 sendmail() 需要地址列表。
要使用 smtplib.sendmail 有效地将电子邮件发送给多个收件人,请按照以下步骤操作:
使用 smtplib 向多个收件人发送电子邮件的示例代码.sendmail:
<code class="python">from email.MIMEMultipart import MIMEMultipart from email.MIMEText import MIMEText import smtplib msg = MIMEMultipart() msg["Subject"] = "Example" msg["From"] = "sender@example.com" msg["To"] = "recipient1@example.com,recipient2@example.com,recipient3@example.com" msg["Cc"] = "cc1@example.com,cc2@example.com" body = MIMEText("example email body") msg.attach(body) smtp = smtplib.SMTP("mailhost.example.com", 25) smtp.sendmail(msg["From"], msg["To"].split(",") + msg["Cc"].split(","), msg.as_string()) smtp.quit()</code>
以上是如何使用 Python 的 smtplib.sendmail() 向多个收件人发送电子邮件?的详细内容。更多信息请关注PHP中文网其他相关文章!