gpt4 book ai didi

amazon-s3 - boto3 Bucket.object.filter 是否有效地检索对象?

转载 作者:行者123 更新时间:2023-12-04 13:47:33 26 4
gpt4 key购买 nike

我想获取位于 foo-bucket/foo-dir 的所有对象(或最多 1000 个)的列表,例如

Bucket: foo-bucket

Directory: foo-dir



我看到 Bucket.objects boto3 API 使用过滤(Bucket.objects.filter)

我想知道它在内部做什么?它是否列出了所有对象和过滤器?或者 AWS 是否提供了一个 API,它接受过滤器参数并返回过滤后的结果。

最佳答案

S3 API 支持 prefixListObjects将过滤响应以仅包含名称与 prefix 匹配的对象的请求.所以:

import boto3

s3 = boto3.resource('s3')
bucket = s3.Bucket('mybucket')
for obj in bucket.objects.filter(Prefix='foo/bar/fie/baz/'):
# do something with obj here

只会返回名称以前缀 foo/bar/fie/baz/ 开头的对象.

关于amazon-s3 - boto3 Bucket.object.filter 是否有效地检索对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43143240/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com