<p>La instalación de pip 18.0 falla con AttributeError: el objeto 'NoneType' no tiene atributo 'bytes'</p>

Creado en 27 sept. 2018  ·  31Comentarios  ·  Fuente: pypa/pip

Medio ambiente

  • versión pip: 10.0.1 -> 18.0
  • Versión de Python: 3.7 (Windows x64)
  • SO: Windows 10

Descripción
pip se instala con un error de compilación en tiempo de ejecución.

Comportamiento esperado
pip se instala sin errores.

Cómo reproducir

  1. Descarga Python 3.7 para Windows x64.
    https://www.python.org/ftp/python/3.7.1/python-3.7.1rc1-amd64.exe
  2. Instalar el paquete
  3. Instalar PyCharm 2018.02
  4. Cree un nuevo proyecto de PyCharm con virtualenv.
  5. Crea una nueva terminal y actualiza pip

Producción
Está utilizando la versión 10.0.1 de pip, sin embargo, la versión 18.0 está disponible.
Debería considerar la actualización a través del comando 'python -m pip install --upgrade pip'.

(venv) C: \ proyectos \ nltk-tutorial> python -m pip install --upgrade pip
Recolectando pepita
Descargando https://files.pythonhosted.org/packages/5f/25/e52d3f31441505a5f3af41213346e5b6c221c9e086a166f3703d2ddaf940/pip-18.0-py2.py3-none-any.whl (1.3MB)
100% | ██████████████████████████████ | 1,3 MB 5,8 MB / s
Instalación de paquetes recopilados: pip
Instalación existente encontrada: pip 10.0.1
Desinstalación de pip-10.0.1:
Pip-10.0.1 desinstalado con éxito
Revertir la desinstalación de pip
Excepción:
Rastreo (llamadas recientes más última):
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_internal \ basecommand.py", línea 228, en main
status = self.run (opciones, argumentos)
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_internal \ commands \ install.py", línea 335, en ejecución
use_user_site = options.use_user_site,
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_internal \ req__init __. Py", línea 49, en install_given_reqs
** kwargs
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_internal \ req \ req_install.py", línea 748, en instalación
use_user_site = use_user_site, pycompile = pycompile,
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_internal \ req \ req_install.py", línea 961, en move_wheel_files
warn_script_location = warn_script_location,
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_internal \ wheel.py", línea 431, en move_wheel_files
generado.extender (fabricante.make (especificación))
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_vendor \ distlib \ scripts.py", línea 403, en make
self._make_script (entrada, nombres de archivo, opciones = opciones)
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_vendor \ distlib \ scripts.py", línea 307, en _make_script
self._write_script (nombres de script, shebang, script, nombres de archivo, ext)
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_vendor \ distlib \ scripts.py", línea 243, en _write_script
lanzador = self._get_launcher ('t')
Archivo "C: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages \ pip-10.0.1-py3.7.egg \ pip_vendor \ distlib \ scripts.py", línea 382, ​​en _get_launcher
resultado = finder (distlib_package) .find (nombre) .bytes
AttributeError: el objeto 'NoneType' no tiene atributo 'bytes'

(venv) C: \ proyectos \ nltk-tutorial> python -m pip install --upgrade pip
Requisito ya actualizado: pip en c: \ proyectos \ nltk-tutorial \ venv \ lib \ site-packages (18.0)

(venv) C: \ proyectos \ nltk-tutorial> instalación de pip
ERROR: debe proporcionar al menos un requisito para la instalación (consulte "Instalación de ayuda de pip")
Está utilizando la versión 10.0.1 de pip, sin embargo, la versión 18.0 está disponible.
Debería considerar la actualización a través del comando 'python -m pip install --upgrade pip'.

Paste the output of the steps above, including the commands themselves and
pip's output/traceback etc.
auto-locked support

Comentario más útil

tratar:
python -m pip install -U --force-reinstall pip
dentro de tu venv

Todos 31 comentarios

PyCharm instala pip como un huevo (ver C:\projects\nltk-tutorial\venv\lib\site-packages\pip-10.0.1-py3.7.egg en el rastreo anterior) y las instalaciones de huevo no son compatibles con pip (no podemos actualizar las instalaciones de diseño de huevo).

Debe plantear esto con JetBrains o crear sus entornos manualmente. Creo que existe un problema sobre esto en el rastreador de PyCharm (planteé uno hace un par de años, pero no he escuchado nada al respecto desde entonces; dejé de rastrearlo cuando dejé de usar PyCharm porque este problema era demasiado problema para mí).

tratar:
python -m pip install -U --force-reinstall pip
dentro de tu venv

Tengo un problema similar (al menos, el rastreo es similar). Estoy usando un entorno conda nuevo (la mayoría de los paquetes de conda-forge), pip 18.1, python 3.6 y linux. El comando force-reinstall dado no resuelve mi problema. Estoy utilizando la nueva sintaxis PEP508 para instalar paquetes privados desde nuestro servidor interno de gitlab (anonimizado a continuación). Agregué algunas declaraciones impresas que espero sean útiles:

$ pip install -e .
Obtaining file:///nas/home/broot/Programs/tools/catutils
req: shapely
comes_from: catutils==0.15.dev1 from file:///nas/home/broot/Programs/tools/catutils
req: netCDF4
comes_from: catutils==0.15.dev1 from file:///nas/home/broot/Programs/tools/catutils
req: aershp>=0.10
comes_from: catutils==0.15.dev1 from file:///nas/home/broot/Programs/tools/catutils
req: numpy!=1.10,!=1.11.0
comes_from: catutils==0.15.dev1 from file:///nas/home/broot/Programs/tools/catutils
req: scipy
comes_from: catutils==0.15.dev1 from file:///nas/home/broot/Programs/tools/catutils
req: GDAL
comes_from: catutils==0.15.dev1 from file:///nas/home/broot/Programs/tools/catutils
Requirement already satisfied: shapely in /rd22/scratch/broot/miniconda/envs/py3k/lib/python3.6/site-packages (from catutils==0.15.dev1) (1.6.4.post1)
Requirement already satisfied: netCDF4 in /rd22/scratch/broot/miniconda/envs/py3k/lib/python3.6/site-packages (from catutils==0.15.dev1) (1.4.1)
req: numpy>=1.7
comes_from: netCDF4 in /rd22/scratch/broot/miniconda/envs/py3k/lib/python3.6/site-packages (from catutils==0.15.dev1)
req: cftime
comes_from: netCDF4 in /rd22/scratch/broot/miniconda/envs/py3k/lib/python3.6/site-packages (from catutils==0.15.dev1)
Requirement already satisfied: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1) (0.16.dev1)
req: nose
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: numpy
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: matplotlib<2.2.0
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: Shapely
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: GDAL
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: pyyaml
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: jinja2
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: scripttest
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: netCDF4
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: six
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
req: atomic_context@ git+ssh://git@***********.com/common/atomic_context.git<strong i="6">@release</strong>
comes_from: aershp>=0.10 in /nas/home/broot/Programs/tools/aershp/lib (from catutils==0.15.dev1)
Exception:
Traceback (most recent call last):
  File "/home/broot/scratch/miniconda/envs/py3k/lib/python3.6/site-packages/pip/_internal/cli/base_command.py", line 143, in main
    status = self.run(options, args)
  File "/home/broot/scratch/miniconda/envs/py3k/lib/python3.6/site-packages/pip/_internal/commands/install.py", line 318, in run
    resolver.resolve(requirement_set)
  File "/home/broot/scratch/miniconda/envs/py3k/lib/python3.6/site-packages/pip/_internal/resolve.py", line 102, in resolve
    self._resolve_one(requirement_set, req)
  File "/home/broot/scratch/miniconda/envs/py3k/lib/python3.6/site-packages/pip/_internal/resolve.py", line 318, in _resolve_one
    add_req(subreq, extras_requested=available_requested)
  File "/home/broot/scratch/miniconda/envs/py3k/lib/python3.6/site-packages/pip/_internal/resolve.py", line 275, in add_req
    wheel_cache=self.wheel_cache,
  File "/home/broot/scratch/miniconda/envs/py3k/lib/python3.6/site-packages/pip/_internal/req/constructors.py", line 290, in install_req_from_req
    if req.url and comes_from.link.netloc in domains_not_allowed:
AttributeError: 'NoneType' object has no attribute 'netloc'

Ah, no miré lo suficientemente de cerca los rastreos, ¿debo presentar un nuevo informe de error?

@WeatherGod : ese no es el mismo problema, consulte la discusión sobre este comentario: https://github.com/pypa/pip/pull/5571#pullrequestreview -162221673.

Ah, de hecho, ¿debo agregar mi rastreo allí?

Es mejor abrir un nuevo error, para que el problema se pueda rastrear correctamente.

Arreglo de @fingerman que no funciona en mi caso. La instalación está rota, ¿alguna idea de lo que está pasando?

Sigue pasando.

@fingerman Gracias. Eso funcionó al instante.

python -m pip install -U --force-reinstall pip

Es posible que necesite la instalación fácil, ya que funcionó para mí al actualizar mi Pip
easy_install -U pip
Compruebe esto https://stackoverflow.com/questions/52460484/python-3-5-pip-9-attributeerror-nonetype-object-has-no-attribute-bytes

@fingerman Gracias

python -m pip install -U --force-reinstall pip

obras

@fingerman tiene el mismo error para forzar la instalación.
Por favor ayuda.

@fingerman tiene el mismo problema en pip 19.0.1, ¿alguna otra solución? Gracias

@fingerman tiene el mismo problema en pip 19.0.1, ¿alguna otra solución? Gracias

Tuve lo mismo, pero MichealAbaho del comentario anterior con el comando easy_install -U pip solucionó el problema.

easy_install -U pip funcionó para mí. Estaba teniendo el problema para 19.0.1

Lo mismo para mi. python -m pip install -U --force-reinstall pip no solucionó el problema donde lo hizo easy_install -U pip . También en 19.0.1.

easy_install -U pip
¡El comando de arriba es bueno!

ok, acabo de encontrar el mismo problema, pero tengo información básica sobre esto,

el viejo pip está en realidad dentro de mi --user , entonces
C:\Python37\python.exe -m pip install --user --force-reinstall -U pip funciona en mi caso
si no di instrucciones con --user , se producirá la falla

La eliminación manual de la versión anterior de pip en mi directorio de instalación de usuario también funciona,

--user Install to the Python user install directory for your platform. 
Typically ~/.local/, or %APPDATA%\Python on Windows. 
(See the Python documentation for site.USER_BASE for full details.)

Python -m pip install -U --force-reinstalar pip
trabajó para mi

"python -m pip install -U --force-reinstall pip" no funcionó, pero "easy_install -U pip" me solucionó el problema. Muchas gracias.

Nada funcionó para mí, finalmente instalé una versión coexistente de Python (3.7), y pip podría actualizarse para esa versión.

@ sapien47 https://github.com/pypa/pip/issues/5820#issuecomment -473693608

import sys
import pprint
pprint.pprint(sys.path)

Esto muestra dónde Python busca archivos de Python. Puede ser útil cuando intenta solucionar errores de importación de Python

@fingerman tiene el mismo problema en pip 19.0.1, ¿alguna otra solución? Gracias

Tuve lo mismo, pero MichealAbaho del comentario anterior con el comando easy_install -U pip solucionó el problema.

¡GRACIAS! este maldito problema me ha estado molestando durante la última hora, ¿le importaría cómo se encontró con esta fantástica solución? Iré a aprender sobre lo que es un .egg

easy_install -U pip funcionó para mí. ¡gracias!

Utilizo el cuaderno jupyter con py3.6 en win10. El problema persiste cuando actualizo pip de 19.0.3 a 19.1.1.

Aquí está mi sys.path:

['',
 'C:\\ProgramData\\Anaconda3\\python36.zip',
 'C:\\ProgramData\\Anaconda3\\DLLs',
 'C:\\ProgramData\\Anaconda3\\lib',
 'C:\\ProgramData\\Anaconda3',
 'C:\\Users\\SSQ\\AppData\\Roaming\\Python\\Python36\\site-packages',
 'C:\\ProgramData\\Anaconda3\\lib\\site-packages',
 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\Sphinx-1.5.6-py3.6.egg',
 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32',
 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32\\lib',
 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\Pythonwin',
 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\IPython\\extensions',
 'C:\\Users\\SSQ\\.ipython']

Sin embargo, easy_install -U pip funcionó. ¡Gracias!

ok, acabo de encontrar el mismo problema, pero tengo información básica sobre esto,

el viejo pip está en realidad dentro de mi --user , entonces
C:\Python37\python.exe -m pip install --user --force-reinstall -U pip funciona en mi caso
si no di instrucciones con --user , se producirá la falla

La eliminación manual de la versión anterior de pip en mi directorio de instalación de usuario también funciona,

--user Install to the Python user install directory for your platform. 
Typically ~/.local/, or %APPDATA%\Python on Windows. 
(See the Python documentation for site.USER_BASE for full details.)

Este también parece ser el caso de mi error.
Use pip list --user para averiguar si pip está instalado a nivel de usuario
where pip en Windows enumera la ruta completa de dónde están los binarios pip

Sigue sucediendo mientras se usa Python 3.6, Windows 10, pasando de pip 10.0.1 a 19.1.1

Python -m pip install -U --force-reinstalar pip

me lo arregló.

tratar:
python -m pip install -U --force-reinstall pip
dentro de tu venv

gracias hermano

python -m pip install -U --force-reinstall pip
funcionó para mí, mientras estaba actualizando de 18.1 a 19.1.1
Gracias por tu ayuda y perdón por mi mal inglés.

Cerrando ya que tenemos una resolución sobre esto.

¿Fue útil esta página
0 / 5 - 0 calificaciones