python put_block_blob_from_path是否折旧?

sulc1iza  于 2023-01-08  发布在  Python
关注(0)|答案(2)|浏览(124)

我目前正在尝试将一些文件上载到我的Azure存储,但似乎无法实现。

from azure.storage.blob import BlockBlobService
data1File=os.path.join(filePath,'data1.csv')
data2File=os.path.join(filePath,'data2.csv')
blockBlobService = BlockBlobService(account_name='NAME', account_key='KEY')
blockBlobService.put_block_blob_from_path('HdiNotebooks/Recommendation_Systems/data/full', 'data1.csv', data1File)
blockBlobService.put_block_blob_from_path('HdiNotebooks/Recommendation_Systems/data/full', 'data2.csv', data2File)

但是,我得到这个错误抛给我:
属性错误:"BlockBlobService"对象没有属性"put_block_blob_from_path"
我之前看到的代码示例如下所示:

from azure.storage.blob import BlobService
data1File=os.path.join(filePath,'data1.csv')
data2File=os.path.join(filePath,'data2.csv')
blockBlobService = BlobService(account_name='NAME', account_key='KEY')
blockBlobService.put_block_blob_from_path('HdiNotebooks/Recommendation_Systems/data/full', 'data1.csv', data1File)
blockBlobService.put_block_blob_from_path('HdiNotebooks/Recommendation_Systems/data/full', 'data2.csv', data2File)

然而,在第一行我就发现了一个错误,没有像"BlobService"这样的模块。我已经检查了Azure包github,但是没有发现我的错误在哪里。
我目前正尝试在Windows机器和Python 3.6.1上运行这段代码

wn9m85ua

wn9m85ua1#

我查看了Azure Storage SDK for Python的版本,您使用的API版本低于0.20.3,并且API已从版本0.30.0更改。
您可以通过pip freeze | grep azure-storage查看当前版本。
如果你想要旧版本,你需要先通过pip uninstall azure-storage删除当前版本,然后通过pip install azure-storage==0.20.3重新安装。
如果没有,请尝试通过pip install --upgrade azure-storage升级到最新版本,并参考最新官方tutorial和最新API reference以使用新API。

jfgube3f

jfgube3f2#

container_name = "flask"
    storage_acc_name = ""
    storage_acc_key = "5MsH80Uea3K/0VIH7LMAsqvHnXIWbrADi9KOhqyYA/3VxL1/VuWVbi1sl15magDT0fz6UR5xj2DH+AStwGrs2Q=="
    service = BlobServiceClient(account_name=storage_acc_name, account_key=storage_acc_key)
    # Dump data into azure blob
    service.put_block_blob_from_path(container_name, "data.json", json.dumps(data))

相关问题