online - jupyter notebook python 3
La instalación de un paquete pip desde un portátil Jupyter no funciona (9)
Cuando ejecuto !pip install geocoder
en Jupyter Notebook obtengo la misma salida que ejecutando pip install geocoder
en el terminal, pero el paquete del geocoder no está disponible cuando intento importarlo.
Estoy usando Ubuntu 14.04, Anaconda 4.0.0 y pip 8.1.2
Instalación de geocodificador:
!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
Luego intenta importarlo:
import geocoder
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-4-603a981d39f2> in <module>()
----> 1 import geocoder
ImportError: No module named geocoder
También intenté apagar el portátil y reiniciarlo sin suerte.
Edición: encontré que al usar el terminal instala el paquete del geocodificador en /home/ubuntu/.local/lib/python2.7/site-packages y usando un cuaderno lo instala en /usr/local/lib/python2.7/dist- Paquetes que no está en el camino. sys.path.append(''/usr/local/lib/python2.7/dist-packages'')
resuelve el problema para la sesión actual.
Entonces, ¿cómo puedo modificar de forma permanente la ruta o indicar a pip dónde instalar el geocodificador?
El problema es que pyarrow
se guarda por pip
en dist-packages
(en su caso /usr/local/lib/python2.7/dist-packages
). Jupyter omite este camino, por lo que pip
no ayudará.
Como solución sugiero agregar en el primer bloque.
import sys
sys.path.append(''/usr/local/lib/python2.7/dist-packages'')
o cualquiera que sea la ruta o la versión python. En el caso de Python 3.5 esto es
import sys
sys.path.append("/usr/local/lib/python3.5/dist-packages")
En el cuaderno jupyter bajo python 3.6, la siguiente línea funciona:
!source activate py36;pip install <...>
Este código funcionó para mí (instalación / ejecución de Windows 10 / Conda en el cuaderno jupyter en Python 2.x)
import sys
!{sys.executable} -m pip install fedex
* nota - necesitas importar sys
Esto me funcionó en Jupyter nOtebook / Mac Platform / Python 3:
import sys
!{sys.executable} -m pip install -r requirements.txt
Intente usar algo de magia mágica: %% sh %%sh pip install geocoder
. Déjeme saber si funciona, gracias.
Opción alternativa: también puede crear una celda bash en jupyter usando el kernel bash y luego pip install geocoder
. Eso debería funcionar
Usando pip2 funcionó para mí:
!pip2 install geocoder
...
import geocoder
g = geocoder.google(''Mountain View, CA'')
g.latlng
[37.3860517, -122.0838511]
conda create -n py27 python=2.7 ipykernel
source activate py27
pip install geocoder
! pip install --user <package>
El le dice al cuaderno que ejecute la celda como un comando de shell.