多个收件人在python smtp lib中不起作用

时间:2019-04-23 01:22:07

标签: python email smtplib

我使用python 2.7 我正在尝试向多个人发送电子邮件。只有一个人不会收到其他人。

我的代码是;

import smtplib
import time
from email.header import Header
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from utilities.ConfigReader import *


def sendEmailNotification(subject, body):
    sender, receiver = getNotificationSettings()
    smtpServer, smtpPort, timeout = getSMTPSettings()
    msg = MIMEMultipart()
    R = receiver.split(",")
    body = MIMEText(body, 'plain', 'utf-8')
    msg['Subject'] = Header(subject, 'utf-8')
    msg['From'] = sender
    msg['To'] = receiver
    msg.attach(body)

    server = smtplib.SMTP(smtpServer, smtpPort)
    server.ehlo()
    try:
        print receiver
        print R
        server.sendmail(sender, R, msg.as_string())
    except smtplib.SMTPException:
        time.sleep(float(timeout))
        server.sendmail(sender, R, msg.as_string())
    server.quit()

sendEmailNotification("Test","Test")

这里有R印;

['test@lob.com', 'ratha@lob.com']

收件人打印;

test@lob.com, ratha@lob.com

我关注了以下话题,但对我没有帮助;

How to send email to multiple recipients using python smtplib?

我在这里做什么错了?

1 个答案:

答案 0 :(得分:1)

我知道了我的问题。 ratha@lob.com在电子邮件列表test@lob.com中。因此,我没有收到API 23的电子邮件,而是收到了ratha@lob.com的电子邮件。更改两个私人电子邮件后,我同时收到这两个电子邮件。因此代码可以按预期工作。