【问题标题】:Download file from AZURE BLOB CONTAINER using SAS URI in PYTHON在 PYTHON 中使用 SAS URI 从 AZURE BLOB CONTAINER 下载文件
【发布时间】:2019-09-11 14:59:21
【问题描述】:

我有 Azure 容器,用于保存一些文件。 我需要使用 python 代码访问它们 我在 JAVA 中做了同样的事情,但我无法在 Python 中复制它

//这是相同的java代码。

CloudBlobContainer Con = new CloudBlobContainer("Some SAS URI");

CloudBlockBlob blob1 = Con.getBlockBlobReference(fileName);

blob1.downloadToFile(filePath+fileName+userName);

【问题讨论】:

  • 你有什么样的 SAS URI?它是用于 blob 容器还是 blob?请编辑您的问题并包含 SAS URI(您可以混淆 SAS URI 的帐户名称和签名部分)。

标签: python azure azure-storage azure-blob-storage


【解决方案1】:

python中没有等价的方法,可以看一下Container class of python

您应该始终将BlockBlobService 与 sas 令牌(如果您有 sas uri,您可以从中获取 sas 令牌)或帐户密钥一起使用,如果您使用 sas 令牌,如下所示:

from azure.storage.blob import BlockBlobService

blobservice = BlockBlobService("storage_account",sas_token="?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-04-24T10:01:58Z&st=2019-04-23T02:01:58Z&spr=https&sig=xxxxxxxxx")
blobservice.get_blob_to_path("container_name","blob_name","local_file_path")

【讨论】:

  • 是的,它工作得很好,谢谢我不知道 BlockBlobService 方法也有 sas_token 参数。
  • @Amitvishnoi,请您帮忙将其标记为答案。这里是link如果你不知道怎么标记,谢谢。
猜你喜欢
  • 2020-10-05
  • 1970-01-01
  • 2021-11-13
  • 1970-01-01
  • 2021-04-29
  • 2017-08-20
  • 2015-06-20
  • 1970-01-01
相关资源
最近更新 更多