2016-07-14 2 views
15

Когда я запустил !pip install geocoder в Jupyter Notebook, я получаю тот же результат, что и рабочий pip install geocoder, но пакет геокодера недоступен, когда я пытаюсь его импортировать.Установка пакета pip из Jupyter Notebook не работает

Я использую Ubuntu 14.04, Anaconda 4.0.0 и 8.1.2 пип

Установка геокодер:

!pip install geocoder 

The directory '/home/ubuntu/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
The directory '/home/ubuntu/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
Collecting geocoder 
    Downloading geocoder-1.15.1-py2.py3-none-any.whl (195kB) 
    100% |████████████████████████████████| 204kB 3.2MB/s 
Requirement already satisfied (use --upgrade to upgrade): requests in /usr/local/lib/python2.7/dist-packages (from geocoder) 
Requirement already satisfied (use --upgrade to upgrade): ratelim in /usr/local/lib/python2.7/dist-packages (from geocoder) 
Requirement already satisfied (use --upgrade to upgrade): six in /usr/local/lib/python2.7/dist-packages (from geocoder) 
Requirement already satisfied (use --upgrade to upgrade): click in /usr/local/lib/python2.7/dist-packages (from geocoder) 
Requirement already satisfied (use --upgrade to upgrade): decorator in /usr/local/lib/python2.7/dist-packages/decorator-4.0.10-py2.7.egg (from ratelim->geocoder) 
Installing collected packages: geocoder 
Successfully installed geocoder-1.15.1 

Затем попробуйте импортировать его:

import geocoder 

--------------------------------------------------------------------------- 
ImportError        Traceback (most recent call last) 
<ipython-input-4-603a981d39f2> in <module>() 
----> 1 import geocoder 

ImportError: No module named geocoder 

Я также попытался выключив ноутбук и перезапустив его без везения.

Редактировать: Я обнаружил, что с помощью терминала установка пакета геокодирования в /home/ubuntu/.local/lib/python2.7/site-packages и использование ноутбука устанавливает его в/usr/local/lib/python2. 7/dist-пакеты, которые не находятся на пути. sys.path.append('/usr/local/lib/python2.7/dist-packages') решает проблему для текущего сеанса.

Как я могу навсегда изменить путь или указать, где установить геокодер?

+1

Это Python 2 пакета. Является ли ваш ноутбук использующим ядро ​​Python 2 или ядром Python 3? – nitind

+0

Его использование Python 2 –

+0

['PYTHONPATH'] (https://docs.python.org/2/using/cmdline.html#envvar-PYTHONPATH) – Alik

ответ

0

Попробуйте использовать некоторые оболочки магии: %% ш %%sh pip install geocoder дайте мне знать, если это работает, спасибо

-3

Использование PIP2 работал для меня:

!pip2 install geocoder 
... 
import geocoder 
g = geocoder.google('Mountain View, CA') 
g.latlng 
[37.3860517, -122.0838511] 
0
conda create -n py27 python=2.7 ipykernel 

source activate py27 

pip install geocoder 
9
! pip install --user <package> 

(«!» The говорит ноутбук для выполнения ячейки как команда оболочки)

0

Альтернативный вариант: вы также можете создать Баш ячейку в jupyter с помощью Баш ядра, а затем pip install geocoder. Это должно работать

1

В jupyter ноутбук под питона 3.6, следующая строка работы:

!source activate py36;pip install <...> 
Смежные вопросы