'listen' 到新文件的 s3 存储桶的最佳方法?

Best way to 'listen' to s3 bucket for new file?

我已将 zapier 连接到我也在监听的 webhook,它将 JSON 文件发送到我的 s3 存储桶中。

我有一些 python 代码,我想在将新文件上传到存储桶时实时执行文件。

'listen' 将此文件上传到 s3 存储桶的最佳方法是什么?

AWS 文档中概述了一些涉及 S3 存储桶中事件通知的推荐选项 https://docs.aws.amazon.com/AmazonS3/latest/user-guide/enable-event-notifications.html

您可以设置 Amazon 的 CloudWatch Event 以侦听新对象何时放入 S3 存储桶。您可以将事件配置为使用特定的 S3 存储桶。将新对象放入存储桶时,您可以配置事件以触发 Lambda 函数,该函数将在添加新对象时执行您想要 运行 的任何自定义 Python 代码。

您的问题很宽泛,所以我无法详细说明,但您可以查看 AWS 文档,其中提供了示例来指导您完成整个过程。 AWS CloudWatch Documentation.

来自 Zapier Platform 团队的 David。

看来您已经找到了答案,这很好。我只是想将 Zapier 作为一个选项插入(因为您已经提到您已经在使用它)。我们的 S3 集成有一个 "new file in bucket" 触发器,您可以将其与任何其他步骤(例如 Python 代码步骤)结合使用。此外,您可以跳过中间人并将您的 zap 构造为:

  1. 一些触发器
  2. 将文件添加到 S3
  3. 运行 Python

而且根本不需要担心 webhooks。

如果您有任何其他问题,请告诉我!