在 S3 中获取最新上传文件的最简单方法是什么(当其他现有文件被覆盖时)- Python
What's the easieat way to get the latest uploaded file in S3 (when other existing files get overwritten) - Python
我有一个 S3 存储桶和一些 Python 代码,该代码读取当天所有可用文件并将它们下载到 s3(它从 FTP 以升序排列,基于文件上传到 FTP 时文件名中的日期时间),例如我已经下载了 file 1
和 file 2
最后 运行 并将它们上传到 S3,现在我知道 FTP 有一个新文件 file 3
可用,然后新的 运行 将按以下顺序下载文件:file1
file2
和 file3
并以相同的顺序再次将所有文件上传到相同的 S3 路径(file1
和 file2
被覆盖,新文件 file 3
也会上传到 s3).
我的问题是在 Python 中识别新上传的文件 file3
的最简单方法是什么?
我能想到的查看 'updated' 文件和新建文件之间区别的最简单方法就是在 PutObject 之前执行 try/except GetObject。这优于先执行 PutObject 然后尝试找出发生了什么变化,因为 S3 没有简单的方法来通过 'Modified date' 或类似的方法检索对象。
因此,如果您的问题是关于在上传之前检查哪些文件已经存在于 S3 中,请先尝试执行 GetObject :)。
我有一个 S3 存储桶和一些 Python 代码,该代码读取当天所有可用文件并将它们下载到 s3(它从 FTP 以升序排列,基于文件上传到 FTP 时文件名中的日期时间),例如我已经下载了 file 1
和 file 2
最后 运行 并将它们上传到 S3,现在我知道 FTP 有一个新文件 file 3
可用,然后新的 运行 将按以下顺序下载文件:file1
file2
和 file3
并以相同的顺序再次将所有文件上传到相同的 S3 路径(file1
和 file2
被覆盖,新文件 file 3
也会上传到 s3).
我的问题是在 Python 中识别新上传的文件 file3
的最简单方法是什么?
我能想到的查看 'updated' 文件和新建文件之间区别的最简单方法就是在 PutObject 之前执行 try/except GetObject。这优于先执行 PutObject 然后尝试找出发生了什么变化,因为 S3 没有简单的方法来通过 'Modified date' 或类似的方法检索对象。
因此,如果您的问题是关于在上传之前检查哪些文件已经存在于 S3 中,请先尝试执行 GetObject :)。