使用boto3从AWS S3下载特定文件

时间:2019-11-26 12:47:37

标签: amazon-web-services amazon-s3 download boto3 python-3.7

我正在尝试将文件从Amazon S3下载到我的本地计算机。

我的存储桶中大约有100,000个jpeg文件, 像SFADOK_1737372938_26465755_29573736.jpeg

现在我要下载所有结尾为*_29573736.jpeg的文件

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

一种简单的方法是使用AWS Command-Line Interface (CLI)

ADDRESS

如果您希望通过boto3程序进行操作,则该程序需要:

  • 使用list_objects_v2()从存储桶中获取对象列表
  • 遍历返回的清单中的每个对象:
    • 如果aws s3 cp s3://my-bucket/ . --recursive --exclude '*' --include '*_29573736.jpeg' 符合您想要的模式,则...
    • 使用download_file()下载对象

存储桶中有如此多的对象,您将需要使用Key遍历list_objects_v2()或使用paginator自动遍历结果。这是因为每个API调用最多返回1000个对象。