Где находится класс BlockBlobService в модуле Python Azure? - PullRequest
0 голосов
/ 04 октября 2018

Я довольно новичок в использовании службы Microsoft Azure и пытаюсь следовать учебнику в https://docs.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-python Использование Python 3.5.6 в дистрибутиве conda 4.5.11 на ПК с Windows.

Первая проблема, с которой я сталкиваюсь при импорте лазури, это то, что я не вижу версию обычным способом.Это означает, что

azure.__version__ 

выдает ошибку.

Затем эта строка кода выдает мне сообщение о том, что он не может ни импортировать имена BlockBlobService, ни PublicAccess.Похоже, что оба устарели или я сам использую какую-то старую версию.

from azure.storage.blob import BlockBlobService, PublicAccess  #Option 1

Однако работает следующий импорт.

from azure.storage.blob import BlobService #Option 2 

Но проблема заключается в том, что после того, как я создаю локальный файл и пытаюсь загрузить его методом create_blob_from_path (какрекомендуется в учебном пособии), метод либо не существует, либо устарел.

Я искал в Интернете решение этой проблемы BlockBlobService, и казалось, что существует постоянная путаница в отношении правильной иерархии модулей и имен классов для импорта.Один пользователь, например, получил некоторую официальную документацию из библиотеки, которая советовала это, что также не работает.

from azure.storage import BlobService #Option 3

Тем не менее кто-то еще сообщил о какой-либо жалобе по этому поводу, которая, по крайней мере, работает в моей системе.Но это не импортирует необходимый объект Blob.

import azure.storage.blob #Option 4

Далее, согласно этой документации, https://docs.microsoft.com/en-us/python/api/azure-storage-blob/azure.storage.blob.blockblobservice.blockblobservice?view=azure-python

класс BlockBlobService находится в модуле azure.storage.blob.blockblobservice.Но интерпретатор выдает ошибку импорта, когда я пытаюсь импортировать это тоже.

Большинство предлагаемых решений касаются некоторого обновления / понижения версии, но, глупо, я почему-то даже не могу найти версию модуля Azure, как я делаю для других модулей.Кроме того, кажется, что многие из решений для pip3 работают на Linux, откуда я использую conda 4.5.11 на Windows.Итак, как заставить работать лазурный API?

1 Ответ

0 голосов
/ 04 октября 2018

В Windows вы должны использовать pip install azure.

Моя среда - Windows 10 с Python 3.6.5, но я не использовал conda.

Сначала в cmd запуститеpip install azure, снимок экрана, как показано ниже: enter image description here

Затем в pycharm попробуйте использовать from xxx import xx, снимки экрана, как показано ниже:

Для BlockBlobService: enter image description here

Для PublicAccess: enter image description here

Местоположение BlockBlobService: enter image description here

...