假设有三个邮箱ID user1@example.comuser2@example.comuser3@example.com,并且每个用户user1.xlsxuser2.xlsxuser3.xlsx都有三个唯一的文件.我必须向每个用户发送一封邮箱,其中包含他们的文件作为附件.

目前,我正在循环发送邮箱,我认为这不是最好的解决方案.以下是邮箱发送片段的简化版本.

for user, attachment_file in zip(users, attachment_files):
    message = Mail(from_email=from_email, to_emails=user)
    attachment = Attachment(attachment_file)
    message.attachment = [attachment]

    send_grid_client.send(message)

有没有办法将这些带有附件的邮箱作为单个SendGrid API调用发送?

推荐答案

要使用一个API调用发送多封邮箱,您可以在Mail Send API上使用personalizations. 遗憾的是,个性化对象不支持附件,因此必须在所有个性化之间共享附件.

这意味着您必须为用例中的每一封邮箱调用Mail Send API,就像您已经在做的那样.此外,您可以并行发送多个API请求.

Python相关问答推荐

覆盖Django rest响应,仅返回PK

如何使用scipy从频谱图中回归多个高斯峰?

使用Keras的线性回归参数估计

大Pandas 胚胎中产生组合

如何在箱形图中添加绘制线的传奇?

rame中不兼容的d类型

Pandas—合并数据帧,在公共列上保留非空值,在另一列上保留平均值

在含噪声的3D点网格中识别4连通点模式

如何在turtle中不使用write()来绘制填充字母(例如OEG)

如何找出Pandas 图中的连续空值(NaN)?

Pandas:填充行并删除重复项,但保留不同的值

为什么我的sundaram筛这么低效

Python 3试图访问在线程调用中实例化的类的对象

如何根据rame中的列值分别分组值

将CSS链接到HTML文件的问题

Autocad使用pyautocad/comtypes将对象从一个图形复制到另一个图形

浏览超过10k页获取数据,解析:欧洲搜索服务:从欧盟站点收集机会的微小刮刀&

如何在Django模板中显示串行化器错误

对于标准的原始类型注释,从键入`和`从www.example.com `?

仅取消堆叠最后三列