You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从S3存储桶各成员的/In文件夹中获取文件列表?

筛选S3存储桶中所有/In文件夹内的文件列表

我的S3_BUCKET存储桶目录结构如下:

MEMBER 1
├── In
├── Out

MEMBER 2
├── In
├── Out

MEMBER 3
├── In
├── Out

我需要仅获取所有/In文件夹中的文件列表,但当前使用的代码会获取存储桶内全部文件,无法满足需求。当前代码:

def pickup_s3_files():
    s3 = boto3.resource('s3')
    bucket = s3.Bucket('S3_BUCKET')
    reports = [obj.key for obj in bucket.objects.all() if not obj.key.endswith("/")]
    return reports

修改后的代码

def pickup_s3_files():
    s3 = boto3.resource('s3')
    bucket = s3.Bucket('S3_BUCKET')
    reports = [obj.key for obj in bucket.objects.all() 
               if not obj.key.endswith("/") and '/In/' in obj.key]
    return reports

修改说明

  • 新增'/In/' in obj.key判断:精准匹配路径中包含/In/的文件,确保只获取各成员文件夹下In子目录内的内容,自动排除Out目录及根目录的文件。
  • 保留not obj.key.endswith("/"):避免将S3中用于标识文件夹的空对象(后缀为/)纳入结果列表。

内容的提问来源于stack exchange,提问作者Amamra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 01:57:21