我正在使用python将文件上载到azure blob。我想用put_block做同样的事情,把文件分成几个小部分,然后上传,然后合并。这样在文件较大的情况下,它不会失败。有人能帮我吗?我在StackOverflow上尝试了多种解决方案。什么都没用
from azure.storage.blob import BlockBlobService
def uploadFile():
accountey="account-key"
accountName="account-name"
containerName="container-name"
blobService =BlockBlobService(account_name=accountName, account_key=accountey )
blobService.create_container(containerName)
blobService.create_blob_from_path(containerName, "image1.jpg", "./images/python.jpg")
uploadFile()
我也试过了这不管用:
^{pr2}$
我在代码中看到的一个问题是您使用
index
变量创建块id。请注意,块id的长度必须相同。在您的例子中,前10个块(0-9)将有一个长度,然后接下来的90个块(10-99)将具有不同的长度,这将导致您的blob上载失败。在两种可能的解决方案:
index
变量:可以用适当数量的零填充index
变量,使它们的长度相等。例如,您可以做类似0000
,0001
….0009
,0010
。。。在不久前我写了一篇关于它的博文,你可能会觉得有用:https://gauravmantri.com/2013/05/18/windows-azure-blob-storage-dealing-with-the-specified-blob-or-block-content-is-invalid-error/。在
相关问题 更多 >
编程相关推荐