Azure Functions的Blob Python工作扩展。
项目描述
Azure Functions Extensions Bindings Blob库
此库允许Python Function Apps中的Blob触发器和Blob输入绑定识别并绑定到Azure Storage Blob sdk中的客户端类型。
Blob客户端类型可以由以下生成:
- Blob触发器
- Blob输入
源代码 包(PyPi) | API参考文档 | 产品文档 | 示例
入门
先决条件
-
使用此包需要Python 3.9或更高版本。有关更多详细信息,请参阅我们的Python Functions版本支持策略页面。
安装包
使用pip安装Azure Functions Extensions Bindings Blob库
pip install azurefunctions-extensions-bindings-blob
创建存储帐户
如果您想创建一个新的存储帐户,可以使用Azure门户、Azure PowerShell或Azure CLI
# Create a new resource group to hold the storage account -
# if using an existing resource group, skip this step
az group create --name my-resource-group --location westus2
# Create the storage account
az storage account create -n my-storage-account-name -g my-resource-group
绑定到SDK类型
Azure Functions Extensions Bindings Blob库允许您创建一个具有Blob触发器或Blob输入的功能应用程序,并将类型定义为BlobClient、ContainerClient或StorageStreamDownloader。当函数执行时,返回的类型将是定义的SDK类型,并具有Python Azure Storage Blob库中所有可见的属性和方法。
import logging
import azure.functions as func
import azurefunctions.extensions.bindings.blob as blob
@app.blob_trigger(arg_name="client",
path="PATH/TO/BLOB",
connection="AzureWebJobsStorage")
def blob_trigger(client: blob.BlobClient):
logging.info(f"Python blob trigger function processed blob \n"
f"Properties: {client.get_blob_properties()}\n"
f"Blob content head: {client.download_blob(encoding="utf-8").read(size=1)}")
@app.route(route="file")
@app.blob_input(arg_name="client",
path="PATH/TO/BLOB",
connection="AzureWebJobsStorage")
def blob_input(req: func.HttpRequest, client: blob.BlobClient):
logging.info(f"Python blob input function processed blob \n"
f"Properties: {client.get_blob_properties()}\n"
f"Blob content head: {client.download_blob(encoding="utf-8").read(size=1)}")
故障排除
通用
SDK类型抛出由Azure Core定义的异常。
此列表可用于参考以捕获抛出的异常。要获取异常的特定错误代码,请使用error_code
属性,例如,exception.error_code
。
下一步
更多示例代码
开始使用我们的Blob示例。
此GitHub仓库中提供了几个示例。这些示例提供了处理存储Blob时遇到的常见场景的示例代码。
-
blob_samples_blobclient - 使用BlobClient类型的示例
- 从BlobTrigger
- 从BlobInput
-
blob_samples_containerclient - 使用ContainerClient类型的示例
- 从BlobTrigger
- 从BlobInput
-
blob_samples_storagestreamdownloader - 使用StorageStreamDownloader类型的示例
- 从BlobTrigger
- 从BlobInput
其他文档
有关Azure Storage Blob SDK的更多信息,请参阅docs.microsoft.com上的Azure Blob存储文档和Azure Storage Blobs README。
贡献
本项目欢迎贡献和建议。大多数贡献需要您同意贡献者许可协议(CLA),声明您有权并且确实授予我们使用您贡献的权利。有关详细信息,请访问https://cla.microsoft.com。
提交拉取请求时,CLA机器人将自动确定您是否需要提供CLA并相应地装饰PR(例如,标签,注释)。只需遵循机器人的说明即可。您只需要在所有使用我们的CLA的仓库中做一次。
本项目采用了Microsoft Open Source Code of Conduct。有关更多信息,请参阅行为准则FAQ或联系opencode@microsoft.com获取任何额外的问题或评论。
项目详情
azurefunctions_extensions_bindings_blob-1.0.0b1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 62d6d8b22f72e804ba471e8a6718d9b55ae1528c960f8b8db3558ab7bf9ae615 |
|
MD5 | 1d6191b1821993e34353120700e0c2d7 |
|
BLAKE2b-256 | 50cb04434d424298c35c496b08f04b5a26e5c6ece88f7611df87342d059dd25e |
azurefunctions_extensions_bindings_blob-1.0.0b1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7ae441a1b0ffa2d8a2bc9fe10889760e5023859c5a8b75bb99fac1ffa90dbbda |
|
MD5 | a7f1e86dd43234f1da40078ac956420f |
|
BLAKE2b-256 | 57b0f0fb5cb671739074cbcbbe60f186279438c1b0dcaaf2953aea85a0d15d99 |