【问题标题】:Boto3: List objects of a specific S3 folder in pythonBoto3:列出python中特定S3文件夹的对象
【发布时间】:2020-03-31 13:32:35
【问题描述】:

我需要获取特定 S3 位置内的对象列表,例如:bucket_name/my_location

以前,我曾经有一个适用于整个存储桶的代码:

from boto3 import resource
# S3 connection
s3_connection = resource(service_name = 's3',
                         aws_access_key_id = s3_key,
                         aws_secret_access_key = s3_secret)
# S3 bucket
s3_bucket_connection = s3_connection.Bucket(s3_bucket)
for my_obj in s3_bucket_connection.objects.all():
    print(my_obj)

但是我的访问和密钥没有列出所有文件夹的权限,并且被设置为只能访问名为 my_location 的文件夹。我已经试过了:

s3_bucket_connection = s3_connection.Bucket(s3_bucket + '/my_location')

这不起作用并引发关于存储桶名称格式不正确的异常。

【问题讨论】:

    标签: amazon-web-services amazon-s3 boto3


    【解决方案1】:

    替换:

    s3_bucket_connection.objects.all():
    

    与:

    s3_bucket_connection.objects.filter(Prefix='my_location/):
    

    【讨论】:

      猜你喜欢
      • 2022-10-17
      • 2014-07-01
      • 1970-01-01
      • 2013-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-13
      • 2017-01-09
      相关资源
      最近更新 更多