我正在使用Python使用list blob读入blob并生成共享访问签名,但是当我尝试读入嵌套文件中的blob时收到一个HTTP 400错误(例如,它可以很好地处理folder/file,但不能处理folder/folder/file)
blobList = blob_service.list_blobs(<container name>)
for blob in blobList:
sas_token = blob_service.generate_blob_shared_access_signature(<container
name>,blob.name, permission=BlobPermissions.READ, expiry=datetime.utcnow() +
timedelta(hours=1))
blob_url_with_sas = blob_service.make_blob_url(<container name>, blob.name,
sas_token=sas_token)
# pass the blob url with sas to read in excel to data frame
df = pd.read_excel(blob_url_with_sas)
我对你的代码做了如下修改,并使它在我的Azure存储帐户上运行,然后我发现它可以正常工作。你知道吗
结果如下。你知道吗
所以我怀疑你的问题是由其他原因引起的,而不是由嵌套文件引起的。你知道吗
同时,我建议您可以考虑直接使用^{} 函数而不是
list_blobs
来获得blob名称列表。你知道吗相关问题 更多 >
编程相关推荐