python-3.x - 如何使用 python 在 Azure 云存储中迭代子目录中的所有 blob 名称?

标签 python-3.x azure azure-blob-storage azure-cloud-services azure-container-service

目标:迭代并写入根目录和存在的多个子目录中的所有 blob。

这是当前编写的代码:

for _file in container_client.walk_blobs(include='metadata'):
            file_name = 'file.txt'
            f = open(file_name, 'a+') 
            with open(file_name, 'r') as sample:
                read_sample = sample.read()
                if not re.search(_file.name, read_sample):
                    print('New One')
                    f.write(_file.name + os.linesep)
                    f.close()
  • 上面的代码仅从根目录返回 blob 名称。

我能够从特定目录中提取 blob,但并非所有子目录都存在。

如何获取所有子目录中存在的 blob 名称?感谢您的帮助!

最佳答案

如果想列出一个目录下的blob,请引用以下代码

def walk_blob_hierarchy(prefix=""):
        nonlocal depth
        for item in container_client.walk_blobs(name_starts_with=prefix):
           
            if isinstance(item, BlobPrefix):                    
                walk_blob_hierarchy(prefix=item.name)
               
            else:
              
                print(item.name)
walk_blob_hierarchy(prefix="<folder name>")

更多详情请引用herehere

关于python-3.x - 如何使用 python 在 Azure 云存储中迭代子目录中的所有 blob 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68096215/

相关文章:

python - 当客户端断开连接时,如何在 django 中停止 StreamingHttpResponse?

python - 是否有不生成列表的 python 3 for 循环单行代码?

C# ASP.NET、Azure 混合 SQL 连接无法连接到 Web 表单应用程序上的数据库

asp.net-mvc - Azure FileShare 有什么好处?将文件存储在 Azure 中与将文件存储在 Blob 存储中是否是一个好的解决方案

python-3.x - 将 jupyter notebook 转换为幻灯片时,绘图图不显示

使用特定键将字典作为参数传递的 Pythonic 方式

azure - 使用 .NET Core 的服务主体列出所有 Azure blob

azure - 如何使用 Terraform 将所有流量重定向到 Azure 中的域

azure - 在两个 Azure 应用服务之间共享文件

azure - 将增量表备份到不同的存储位置