【问题标题】:AWS Lambda: How to extract attachment (xls) from raw email?AWS Lambda:如何从原始电子邮件中提取附件 (xls)?
【发布时间】:2016-07-26 03:10:35
【问题描述】:

我在 S3 存储桶中有原始电子邮件。我正在编写一个 AWS Lambda 函数来提取 .xls 附件并将其保存到另一个 S3 存储桶。到目前为止,我已经让 Lambda 阅读了电子邮件的原始正文,但是如何提取附件?

s3.getObject({
        Bucket: bucketName,
        Key: sesNotification.mail.messageId
    }, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            context.fail();
        } else {
            console.log("Raw email:\n" + data.Body);

            // Extract xls and copy to bucket

            context.succeed();
        }
    });

电子邮件正文中的附件:

------=_Part_3703880_1038025051.1459895117742
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=Book1.xlsx
Content-ID: <223412a-63b2-9471-19a8-f94640ef04a5@yahoo.com>

UEsDBBQABgAIAAAAIQDIo800dgEAAAQFAAATAN0BW0NvbnRlbnRfVHlwZXNdLnhtbCCi2QEooAAC
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

【问题讨论】:

    标签: email amazon-web-services amazon-s3 aws-lambda


    【解决方案1】:

    附件也是原始数据,因此您需要一种方法将其“传输”或解码为您可以处理的实际文件内容。

    查看python核心库“email”了解更多详情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-03
      • 1970-01-01
      • 2010-11-21
      • 2020-07-20
      • 1970-01-01
      相关资源
      最近更新 更多