使用Python访问Azure Blob而不使用Azure存储Blob包



我需要使用Python将JSON文件上传到Azure blob,使用以下代码:

from azure.storage.blob import BlobClient
blob = BlobClient(account_url=ACCOUNT_URL,
container_name=CONTAINER_NAME,
blob_name = folder1/folder2/sample.json,
credential=CREDENTIAL)
blob.upload_blob(json.dumps(sample_json),overwrite=True)

此代码运行良好。唯一的问题是,软件包azure.storage.blob安装了chardet软件包,该软件包具有LGPL许可证,不适用于我的项目。有没有其他方法可以在不使用上述包的情况下将数据上传到Azure上的blob?

SDK只是Azure Storage REST API的包装器。如果您无法使用SDK,您可以编写自己的代码来使用REST API。

对于上载blob,REST API操作将为Put Blob:https://learn.microsoft.com/en-us/rest/api/storageservices/put-blob.

考虑到SDK是开源的,您可以查看SDK代码并了解REST API在SDK中的使用情况。这是您可以找到源代码的地方:https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/storage/azure-storage-blob/azure/storage/blob.

最新更新