![](/img/trans.png)
[英]Create and upload csv file to azure blob storage using python
[英]Upload CSV file into Microsoft Azure storage account using python
我正在尝试使用python将.csv
文件上传到Microsoft Azure存储帐户。 我发现C-sharp代码将数据写入blob存储。 但是,我不懂C#
语言。 我需要使用python上传.csv
文件。
是否有任何python示例将CSV文件的内容上传到Azure存储?
我找到了使用此参考链接的解决方案。 我的以下代码完全适用于上传和下载 .csv
文件。
#!/usr/bin/env python
from azure.storage.blob import BlockBlobService
from azure.storage.blob import ContentSettings
block_blob_service = BlockBlobService(account_name='<myaccount>', account_key='mykey')
block_blob_service.create_container('mycontainer')
#Upload the CSV file to Azure cloud
block_blob_service.create_blob_from_path(
'mycontainer',
'myblockblob.csv',
'test.csv',
content_settings=ContentSettings(content_type='application/CSV')
)
# Check the list of blob
generator = block_blob_service.list_blobs('mycontainer')
for blob in generator:
print(blob.name)
# Download the CSV file From Azure storage
block_blob_service.get_blob_to_path('mycontainer', 'myblockblob.csv', 'out-test.csv')
根据我的理解,我认为您希望将csv
文件的数据上传到Azure表存储。 根据python csv
包的文档和Azure存储Python SDK的官方教程 ,我制作了示例代码和csv数据,如下所示。
例如,我测试csv文件的数据如下。
Name,Species,Score
Kermit,Frog,10
Ms. Piggy,Pig,50
Fozzy,Bear,23
和示例代码。
import csv
from azure.storage.table import TableService, Entity
table_service = TableService(account_name='myaccount', account_key='mykey')
table_service.create_table('csvtable')
csvfile = open('test.csv', 'r')
fieldnames = ('Name','Species','Score')
reader = csv.DictReader(csvfile)
rows = [row for row in reader]
for row in rows:
index = rows.index(row)
row['PartitionKey'] = '1'
row['RowKey'] = '%08d' % index
table_service.insert_entity('csvtable', row)
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.