首页 > 解决方案 > 将文件数据从 Azure Blob 存储访问到变量

问题描述

我想将文件数据从 Azure Blob 存储访问到变量。

我正在使用的以下代码将文件数据从 Azure Blob 存储读取到本地文件。我想将它读入一个变量。有可能做到吗?

from azure.storage.blob import BlockBlobService, PublicAccess

accountName='user123'
accountKey='Pass@12345'
CONTAINER_NAME='development'
blobName='4567/dummyFile.txt'
file_path='C:\\Users\\Sam\\Desktop\\testFile.txt' # local file in which the content from blob will be written


block_blob_service = BlockBlobService(account_name=accountName, account_key=accountKey)

# to access content from azure blob storage to local file
block_blob_service.get_blob_to_path(CONTAINER_NAME,blobName,file_path)

标签: python-3.xazureazure-devopsazure-blob-storage

解决方案


Python SDK for Azure Storage为此目的提供了 3 个辅助方法:

  1. get_blob_to_stream:此方法将下载 blob 并将内容存储在stream. 如果要使用stream类型变量,请使用此方法。
  2. get_blob_to_bytes:此方法将下载 blob 并将内容存储在byte array. 如果要使用byte array类型变量,请使用此方法。
  3. get_blob_to_text:此方法将下载 blob 并将内容存储在string. 如果要使用string类型变量,请使用此方法。请仅当您知道 blob 内容是字符串时才使用此方法。如果 blob 的内容是二进制的(例如图像文件),请使用其他两种方法。

推荐阅读