使用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中文網其他相關文章!