【问题标题】:Using azure.storage.blob to write Python DataFrame as CSV into Azure Blob使用 azure.storage.blob 将 Python DataFrame 作为 CSV 写入 Azure Blob
【发布时间】:2020-10-04 15:49:06
【问题描述】:

我尝试了以下链接中的示例:Write Python DataFrame as CSV into Azure Blob 但是 BlockBlobService 在 azure.storage.blob 中不再可用,因此我尝试使用 BlockBlobClient 并且可以使用以下代码创建、删除容器。但是,我找不到在容器中创建 blob 并将数据帧中的记录写入其中的方法,如上面的链接中所述。请帮助我想创建一个 blob 并将数据帧中的记录写入其中。

from azure.storage.blob import BlobServiceClient

blobService = BlobServiceClient.from_connection_string("**")
#blobService = BlobServiceClient(account_name=accountName, account_key=accountKey)
try:
   new_container = blobService.create_container("containerfromblobservice")
   properties = new_container.get_container_properties()
except ResourceExistsError:
   print("Container already exists.")

【问题讨论】:

  • 您还有其他顾虑吗?如果您没有其他顾虑,您可以接受它作为答案吗?

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


【解决方案1】:

关于问题,请参考以下代码

# create data
head = ["col1" , "col2" , "col3"]
value = [[1 , 2 , 3],[4,5,6] , [8 , 7 , 9]]
df = pd.DataFrame (value, columns = head)
output = df.to_csv (index=False, encoding = "utf-8")
print(output)

connection_string=''
# Instantiate a new BlobServiceClient using a connection string
blob_service_client = BlobServiceClient.from_connection_string(connection_string)
# Instantiate a new ContainerClient
container_client = blob_service_client.get_container_client('mycsv')
try:
   # Create new Container in the service
   container_client.create_container()
   properties = container_client.get_container_properties()
except ResourceExistsError:
   print("Container already exists.")

# Instantiate a new BlobClient
blob_client = container_client.get_blob_client("output.csv")
# upload data
blob_client.upload_blob(output, blob_type="BlockBlob")

更多详情请参考herehere

【讨论】:

    猜你喜欢
    • 2018-10-05
    • 1970-01-01
    • 2020-02-01
    • 2019-11-19
    • 1970-01-01
    • 2020-04-16
    • 2014-02-07
    • 2021-01-24
    • 2023-01-07
    相关资源
    最近更新 更多