欢迎访问宙启技术站
智能推送

使用Python将数据流上传到AzureBlob存储中

发布时间:2023-12-19 00:40:45

要将数据流上传到Azure Blob存储中,您可以使用Azure Storage SDK for Python。以下是一个使用例子来演示如何将数据流上传到Azure Blob存储中。

首先,确保已安装Azure Storage SDK。您可以使用以下命令安装它:

pip install azure-storage-blob

接下来,导入必要的模块:

from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
import os
import io

然后,设置连接字符串和容器名称:

connect_str = "<your_connection_string>"
container_name = "<your_container_name>"

创建BlobServiceClient对象,用于与Blob存储服务进行交互:

blob_service_client = BlobServiceClient.from_connection_string(connect_str)

检查并创建容器:

container_client = blob_service_client.get_container_client(container_name)
if not container_client.exists():
    container_client.create_container()

接下来,创建BlobClient对象,用于上传数据流:

blob_name = "<your_blob_name>"
blob_client = blob_service_client.get_blob_client(container=container_name, blob=blob_name)

打开要上传的文件作为二进制数据流:

with open("<your_file_path>", "rb") as data:
    blob_client.upload_blob(data)

通过以上代码,数据流将被上传到Azure Blob存储中。

以下是完整的示例代码:

from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
import os

# 设置连接字符串和容器名称
connect_str = "<your_connection_string>"
container_name = "<your_container_name>"

# 创建BlobServiceClient对象
blob_service_client = BlobServiceClient.from_connection_string(connect_str)

# 检查并创建容器
container_client = blob_service_client.get_container_client(container_name)
if not container_client.exists():
    container_client.create_container()

# 创建BlobClient对象
blob_name = "<your_blob_name>"
blob_client = blob_service_client.get_blob_client(container=container_name, blob=blob_name)

# 打开要上传的文件作为二进制数据流
with open("<your_file_path>", "rb") as data:
    blob_client.upload_blob(data)

使用上述示例代码,您可以将数据流上传到Azure Blob存储中。请注意替换示例代码中的连接字符串、容器名称、Blob名称和文件路径。