从azure下载的blob返回空

yyhrrdl8  于 2021-09-08  发布在  Java
关注(0)|答案(0)|浏览(144)

我的传感器数据以分层结构存储在azure blob存储中:第一级:位置第二级:日期第三级:时间
因此,如果我的containername为“edge”,则传感器数据存储在 edge/location1/2021-07-09/07-00/ 在这些文件夹中,传感器数据存储在json文件中。因此,我在这个网站上修改了代码如下

import json
import pandas as pd
import keyring
import os

STORAGEACCOUNTURL= "https://<mystorageaccount>.blob.core.windows.net"
STORAGEACCOUNTKEY= keyring.get_password('<name>', '<username>')
LOCALFILENAME= os.path.join(os.getcwd(), 'test_blob', 'blobstorage.txt')
CONTAINERNAME= "edge"
BLOBNAME= 'location1/2021-07-09/07-00/'

# download from blob

t1=time.time()
blob_service_client_instance = BlobServiceClient(account_url=STORAGEACCOUNTURL, 
credential=STORAGEACCOUNTKEY)
blob_client_instance = blob_service_client_instance.get_blob_client(CONTAINERNAME, BLOBNAME, 
snapshot=None)
with open(LOCALFILENAME, "wb") as my_blob:
    blob_data = blob_client_instance.download_blob()
    blob_data.readinto(my_blob)
t2=time.time()
print(("It takes %s seconds to download "+BLOBNAME) % (t2 - t1))

连接似乎正常,如果我将blobname设置为不存在的blob,如果我尝试下载该blob,就会出现blobnotfound错误,并且我可以使用 blob_service_client_instance.list_containers() 检索现有容器等。
但是下载总是检索空结果。知道原因吗(当然,是的:这些blob中存在json文件)?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题