使用Python中的多处理从Azure下载Blob

时间:2017-11-24 16:53:55

标签: python azure multiprocessing azure-storage-blobs blobs

有没有人知道如何在python中使用多处理从Azure存储下载Blob?

下面的代码给了我这个错误:" TypeError:' Blob'对象不可迭代"

如何解决这个问题?

代码:

def downloadBlobs(generator):
    for Blob in generator:
        path = 'temp/' + Blob.name.split('/')[-1]
        block_service.get_blob_to_path(CONTAINER_NAME,Blob.name,path)


if __name__  == '__main__':

    start = timeit.default_timer()

    generator = block_service.list_blobs(CONTAINER_NAME, prefix='trt2', num_results=1000)
    p = Pool()
    p.map(downloadBlobs, generator)

    final = timeit.default_timer() - start

    print(final)

1 个答案:

答案 0 :(得分:0)

这是一个案例问题吗? 你能试试小写:

for blob in generator:
    path = 'temp/' + blob.name.split('/')[-1]
    block_service.get_blob_to_path(CONTAINER_NAME,blob.name,path)

我猜Blob是一种类型,所以你不能使用它。