如何发送多个收件人 sendgrid V3 api Python

新手上路,请多包涵

任何人都请帮忙,我正在使用 sendgrid v3 api。但是我找不到任何方法可以将电子邮件发送给多个收件人。预先感谢。

     import sendgrid
    from sendgrid.helpers.mail import *

    sg = sendgrid.SendGridAPIClient(apikey="SG.xxxxxxxx")
    from_email = Email("FROM EMAIL ADDRESS")
    to_email = Email("TO EMAIL ADDRESS")
    subject = "Sending with SendGrid is Fun"
    content = Content("text/plain", "and easy to do anywhere, even with Python")
    mail = Mail(from_email, subject, to_email, content)
    response = sg.client.mail.send.post(request_body=mail.get())
    print(response.status_code)
    print(response.body)
    print(response.headers)

我想将电子邮件发送给多个收件人。比如to_mail = “xxx@gmail.com, yyy@gmail.com”。

原文由 P113305A009D8M 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 463
1 个回答

请注意,使用此处其他答案的代码,电子邮件的收件人将在 TO 字段中看到彼此的电子邮件地址。为了避免这种情况,必须为每个电子邮件地址使用一个单独的 Personalization 对象:

 def SendEmail():
    sg = sendgrid.SendGridAPIClient(api_key="YOUR KEY")
    from_email = Email ("FROM EMAIL ADDRESS")

    person1 = Personalization()
    person1.add_to(Email ("EMAIL ADDRESS 1"))
    person2 = Personalization()
    person2.add_to(Email ("EMAIL ADDRESS 2"))

    subject = "EMAIL SUBJECT"
    content = Content ("text/plain", "EMAIL BODY")
    mail = Mail (from_email, subject, None, content)
    mail.add_personalization(person1)
    mail.add_personalization(person2)
    response = sg.client.mail.send.post (request_body=mail.get())

    return response.status_code == 202

原文由 asmaier 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进