Python smtplib模块:附件未成功发送给多个收件人

0 投票
1 回答
645 浏览
提问于 2025-04-17 00:35

我正在用以下代码把一个文件发送给包括我在内的三个收件人。

    import smtplib
    from email.MIMEMultipart import MIMEMultipart
    from email.MIMEBase import MIMEBase
    from email import Encoders


    SUBJECT = "Successful !"

    msg = MIMEMultipart()
    msg['Subject'] = SUBJECT
    msg['From'] = <myemail>

    emails=["<myemail>","<email2>","<email3>"]
    msg['To'] = ', '.join(emails)

    part = MIMEBase('application', "octet-stream")
    part.set_payload(open("test.txt", "rb").read())
    Encoders.encode_base64(part)

    part.add_header('Content-Disposition', 'attachment; filename="success.txt"')

    msg.attach(part)
    server = smtplib.SMTP("<server_address>")
    server.sendmail(msg['From'],msg['To'], msg.as_string())

在这种情况下,我收到了邮件,但其他两个收件人没有收到。

我还尝试用

     server.sendmail(msg['From'],emails, msg.as_string())

替换最后一行。结果我又收到了邮件,但其他两个收件人还是没有收到。

1 个回答

0

这是提问者的作者重新发布的回答。

其实这两种方法都能成功运行!!我之前不确定我的其他收件人是否收到了邮件……他们确实成功收到了我的邮件…… – nsh 2011年8月30日 0:05

我用这个链接找到了我问题的解决方案:stackoverflow.com/questions/3362600/… – nsh 2011年8月30日 0:14

撰写回答