2016-11-14 5 views
2

Ich verwende eine Data Science virtuelle Maschine auf Azure, die Anaconda Python installiert hat.Python Anaconda und Azure-Storage-Modul

Ich brauche mit Modul Azure Storage blob zuzugreifen:

from azure.storage.blob import BlockBlobService 

Wenn mit diesem Befehl tun erhalte ich die Meldung, dass das Modul azure.blob.storage nicht gefunden wird. Ich habe das Update für das azure-storage Modul gezwungen:

pip install azure-storage --upgrade 

Das fehlende Modul stattdessen ist auf den installierten Modulen:

pip freeze 

Nach Anaconda zu entfernen und unter Verwendung der Standard-Python-distro alles gut funktioniert.

Wie kann ich Anaconda mit Azurestorage-Unterstützung weiter verwenden? Hat jemand dieses Problem ausprobiert und gelöst?

+0

Sie müssen sicherstellen, dass Sie die Version von pip verwenden, die mit der Installation von Anaconda verbunden ist. Was ist der Output von 'welchem ​​Pip'? – darthbith

Antwort

0

Es gibt zwei Installationen für Python auf Azure VM für Data Science, die Systemebene & Anaconda-Ebene enthalten.

Wie @darthbith sagte, zeigt es den Pfad /usr/local/bin/pip, wenn Sie den Befehl which pip ausführen, die auf Systemebene gehören.

Sie müssen zum Pfad bin von Anaconda wechseln und die gewünschten Module mit dem Befehl ./pip für die aktuelle Anaconda installieren, wie unten unter jupyter-Terminal beschrieben.

# 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) 
..... 

Dann wird das azure-storgae Modul für den aktuellen Anaconda aufgerüstet werden.

Ich hoffe, es hilft.

2

Die Linux-Varianten der Data Science Virtual Machine umfassen zwei Anaconda-Umgebungen: root mit Python 2.7 und py35 mit Python 3.5.

source activate py35 

pip und Python beide werden dann auf der gleichen Umgebung beziehen: Sie sollten die, die Sie wollen, aktivieren.

Sie müssen möglicherweise pip als root ausführen, um Pakete zu installieren. Sie können mit

sudo /anaconda/bin/pip 

für die Root-Umgebung tun, oder

sudo /anaconda/envs/py35/bin/pip 

für die py35 Umgebung.