python - 访问 csv 文件表单 blob 容器的 Azure python 函数 inputblob.name 为 None
问题描述
我尝试按照https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob-output?tabs=python从我的 azure unfction 访问 csv 文件。
输入文件:
- 存储帐户:stpartnerdata001
- Blob 容器:data01
- 文件夹:imdb-extensive-dataset
- 文件:IMDb 电影.csv
我在函数应用应用程序设置中创建了一个 DataConnectionSettings01,其值为来自 stpartnerdata001 存储帐户的 key1 的连接字符串。
"name": "inputblob",
"type": "blob",
"path": "data01/imdb-extensive-dataset/IMDb movies.csv",
"connection": "DataConnectionSettings01",
"direction": "in"
我尝试运行该函数以打印出文件名:
import logging
import azure.functions as func
def main(req: func.HttpRequest, inputblob: func.InputStream) -> func.HttpResponse:
logging.info('Function called')
logging.info('input name: %s', inputblob.name)
return func.HttpResponse("This HTTP triggered function executed successfully.")
执行功能时,我总是收到输入名称:无。如何访问 csv 文件?
解决方案
抱歉,目前看来此功能不可用。这是一个已知问题:Blob 输入绑定不接收 blob。
描述是函数宿主不提供输入blob绑定的元数据(名称,长度等),最好的方法是使用python存储SDK来实现。
blob 输入绑定只能获取 blob 内容。
推荐阅读
- linux - 如何创建一个 linux shell 别名来为 g++ 编译器提供要编译的文件的路径?
- tensorflow - 如何为 csv 数据集创建模型并使用 TensorFlow JS 计算预测结果
- node.js - 如何在流星中正确使用expose-gc?
- android - proguard android studio 中的错误,无法使用 minifyenabled true 构建我的项目
- hive - 该文件不属于 hive 并且加载数据也不作为 hive 运行
- powershell - 使用包含 $ 作为密码的变量
- node.js - Node-sass 没有与 TestCafe Docker Image 中使用的节点版本绑定
- python-3.x - 口译员包含什么?
- javascript - javascript - 减少巨大的数组列表以使其更具可读性
- python - 如何将巨大的html拆分为小文件