2016-11-14 14 views
2

Я использую виртуальную машину Data Science на Azure, на которой установлен anaconda python.Python Anaconda и azure-storage module

Мне нужно получить доступ модуль Azure хранилища больших двоичных объектов с помощью:

from azure.storage.blob import BlockBlobService 

При работе с этой командой я получаю сообщение о том, что модуль azure.blob.storage не найден. Я вынужден обновление для модуля azure-storage:

pip install azure-storage --upgrade 

Отсутствующий модуль вместо присутствует на установленных модулей с использованием:

pip freeze 

После удаления Anaconda и используя стандартный Python дистрибутиву все работает хорошо.

Как можно использовать Anaconda с поддержкой azurestorage? Кто-нибудь экспериментировал с этой проблемой и решил ее?

+0

Вы должны убедиться, что используете версию протокола, связанную с установкой Anaconda. Что такое вывод 'which pip' – darthbith

ответ

0

Есть две установки для Python на Azure VM для науки о данных, которые включают системный уровень & Уровень Anaconda.

Как сказал @darthbith, он показывает путь /usr/local/bin/pip при запуске команды which pip, которая относится к системному уровню.

Вам необходимо перейти на путь bin от Anaconda и установить модули, которые вы хотите, используя команду ./pip для текущей Anaconda, как показано ниже с помощью терминала jupyter.

# For example, using anaconda for Python 2 
[email protected]:~$ cd anaconda2_20/bin 
# Using the Anaconda pip to install modules 
[email protected]:~/anaconda2_20/bin$ ./pip install azure-storage --upgrade 
# Then see the content below 
Collecting azure-storage                             
    Downloading azure_storage-0.33.0-py2-none-any.whl (182kB)                    
    100% |################################| 184kB 2.9MB/s                     
Collecting requests (from azure-storage)                         
    Downloading requests-2.12.1-py2.py3-none-any.whl (574kB)                     
    100% |################################| 583kB 1.7MB/s                     
Requirement already up-to-date: azure-nspkg in /home/nbcommon/anaconda2_20/lib/python2.7/site-packages (from azure-storage)    
Requirement already up-to-date: azure-common in /home/nbcommon/anaconda2_20/lib/python2.7/site-packages (from azure-storage)    
Requirement already up-to-date: futures in /home/nbcommon/anaconda2_20/lib/python2.7/site-packages (from azure-storage)     
Collecting cryptography (from azure-storage)                        
    Downloading cryptography-1.5.3.tar.gz (400kB) 
..... 

Затем модуль azure-storgae быть модернизированы для текущего Anaconda.

Надеюсь, это поможет.

2

Linux-версии виртуальной машины Data Science включают две среды Anaconda: root, с Python 2.7 и py35, с Python 3.5. Вы должны активировать тот, который вы хотите:

source activate py35 

пип и питон тогда оба относятся к одной и той же среде.

Возможно, вам потребуется запустить pip как root для установки пакетов. Вы можете сделать с

sudo /anaconda/bin/pip 

для корневой среды или

sudo /anaconda/envs/py35/bin/pip 

для окружающей среды py35.