我必须确保数据已上传。还有比这更好的方法吗?特别是我想获取交易的一些元数据?
try:
blob_service.put_block_blob_from_path(
'user',
fileName+'.'+ext,
fileName+'.'+ext)
except:
print sys.exc_info()[1]
最佳答案
适用于 python 的 Azure SDK 支持 progress_callback
方法。我们可以使用回调函数监控进度。
使用签名function(current,total)
回调进度,其中current
是迄今为止传输的字节数,total
> 是 blob 的大小,如果总大小未知,则为 None。
def progress_callback(current, total):
print current
print "==============="
print total
print "==============="
if(current<total):
print "unfinish"
else:
print "finish"
blob_service = BlobService(account_name=storage_account_name, account_key=storage_account_key)
blob_service.put_block_blob_from_path(container, blob_name, 'C:\\Users\\file_path',progress_callback=progress_callback)
此外,如果您想知道文件是否位于 Azure 存储上,可以使用存储探索工具
或list_blob
方法来检查文件。
请尝试一下。
关于python - 如何检查以确保 blob_service.put_block_blob_from_path() 在 python 中成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32382038/