如何在 Azure 云存储中使用 python 遍历子目录中的所有 blob 名称?

how to iterate through all the blob names from subdirectories as well, in Azure Cloud Storage using python?

Objective :迭代并写入根目录和存在的多个子目录中的所有 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,请参考以下代码

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>")

详情请参考here and here