【发布时间】:2015-02-13 17:24:59
【问题描述】:
我正在使用boto 库来访问亚马逊 s3 存储桶。我正在尝试列出存储桶中给定文件夹中的所有文件和文件夹。我用它来获取所有文件和文件夹:
for key in bucket.list():
print key.name
这为我提供了 root 中的所有文件和文件夹,以及其中包含文件的子文件夹,如下所示:
root/
file1
file2
folder1/file3
folder1/file4
folder1/folder2/file5
folder1/folder2/file6
我怎样才能只列出folder1 的内容,其中会列出如下内容:
files:
file3
file4
folders:
folder2
我可以使用
导航到文件夹for key in in bucket.list(prefix=path/to/folder/)
但在这种情况下,它将folder2 中的文件列为folder1 的文件,因为我正在尝试您在存储桶路径上使用字符串操作。我已经尝试了每种情况,但如果路径更长并且文件夹有多个文件和文件夹(并且这些文件夹有更多文件),它仍然会中断。有没有递归的方法来处理这个问题?
【问题讨论】:
标签: python amazon-web-services amazon-s3 boto