python - 通过 python API 列出 azure blob 存储中的虚拟文件夹

标签 python azure azure-blob-storage

我正在阅读this tutorial但我无法找到一种方法来列出容器下的所有(虚拟)文件夹而不获取所有文件。我的 500 个(虚拟)文件夹中有 26K 个文件。我只想获取文件夹列表,而不必等待几分钟即可获取包含整个文件列表的 list_blobs 的输出。有没有办法做到这一点?或者至少告诉 list_blobs 不要深入容器下方的 n 层?

最佳答案

也许对某人来说还不算太晚。 list_blobs 不接受 delimiter 参数。相反,请使用 walk_blobs ( doc ) 获取包含文件的生成器。使用 delimiter="/" 您将获得文件/文件夹的下一个子级别:

例如:

blob_service_client = BlobServiceClient.from_connection_string(file_connect_str)
container_client = blob_service_client.get_container_client(container_name)
for file in container_client.walk_blobs('my_folder/', delimiter='/'):
    print(file.name)

将返回:

"my_folder/sub_folder_1/"
"my_folder/sub_folder_2/"

关于python - 通过 python API 列出 azure blob 存储中的虚拟文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33477687/

相关文章:

azure - "Cannot access a closed file."将文件上传到 .Net Core 3 中的 Azure Blob 存储时

python - Matplotlib:如何修复意外的 x 刻度行为

python - pandas 过滤日期最近 3 个月

python - Matplotlib 使用一组特定数据点绘制等高线图

Azure Blob 存储文件路径限制

c# - 将文件下载到 Azure 函数应用程序进行操作

python - 用 pyopenCL 填充二维数组

azure - 优雅地停止 Azure 容器实例

c# - 来自 OnEventActivityAsync 的数据在第一次之后不会更改 ConversationState

azure - CSP 表单操作指令覆盖在 Chrome 中不起作用