使用 Python 向邮件列表发送电子邮件

Joh*_*zon 6 python mailing-list smtplib

我正在努力检查为什么会发生这种情况,但不确定它是在 gmail 的服务器端还是在我正在使用的脚本的一部分中。问题是我正在尝试将电子邮件发送到邮件列表(我发现许多帖子解释如何包含各种电子邮件,但没有解释是否存在将其发送到包含多个地址的单个电子邮件的限制或解决方法) 。

在这种情况下,我想将电子邮件发送给我们公司 BI 团队的许多不同人员 (bi@company.com),通常向此地址发送电子邮件将导致团队中的每个人都收到电子邮件,但是我无法让我工作,而且我不想将所有电子邮件都包含在列表中,因为数量太多,每次都必须手动更改。

当我用另一个单人电子邮件尝试此操作时,效果非常好

    import smtplib    

    sender = 'server@company.com'
    receivers = ['bi@company.com']
    q = ""

    message = """From: Error alert <Server-company>
    To: BI <bi@company.com>
    Subject: Error e-mail

    %s
    """ % q

    try:
        smtpObj = smtplib.SMTP('localhost')
        smtpObj.sendmail(sender, receivers, message)
        print "Successfully sent email"
    except SMTPException:
       print "Error: unable to send email"
Run Code Online (Sandbox Code Playgroud)

Hac*_*lic 1

使收件人列出您要发送的电子邮件:

example:
recivers = ['a@gmail.com','b@gmail.com,...]
Run Code Online (Sandbox Code Playgroud)

尝试这样:

import smtplib
from email.mime.text import MIMEText
sender = 'server@company.com'
receivers = ['a@company.com','b]@company.com'....]
server = smtplib.SMTP('smtp@serv.com',port)
server.starttls()
msg = MIMEText('your_message')
msg['Subject'] = "subject line"
msg['From'] = sender
msg['To'] = ", ".join(receivers)
server.login('username','password')
server.sendmail(sender, recipients, msg.as_string())
server.quit()
Run Code Online (Sandbox Code Playgroud)