put_block_blob_from_path是否已折旧?

时间:2017-06-14 10:00:42

标签: python python-3.x azure azure-storage-blobs

我目前正在尝试将一些文件上传到我的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)

然而,我收到了这个错误:

AttributeError:' BlockBlobService' object没有属性" 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)

但是,已经在第一行我得到的错误是没有像#34; BlobService"这样的模块。我已经浏览了azure包github,但无法弄清楚我的错误在哪里。

我目前正在尝试在Windows机器和Python 3.6.1上运行此代码

1 个答案:

答案 0 :(得分:2)

我查看了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。