Erreur lors de la mise à niveau de pep: UnicodeDecodeError: 'utf-8' codec ne peut pas décoder les octets
Je viens d'installer python sur windows 10, et je suis en train de mettre à niveau pip.
Mon nom d'utilisateur windows a l'hébreu charecters...
Lorsque j'essaie d'exécuter:
python -m pip install --upgrade pip
J'obtiens cette erreur:
Collecting pip
Using cached pip-8.0.2-py2.py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 7.1.2
Exception:
Traceback (most recent call last):
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\basecommand.py", line 211, in main
status = self.run(options, args)
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\commands\install.py", line 311, in run
root=options.root_path,
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\req\req_set.py", line 640, in install
requirement.uninstall(auto_confirm=True)
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\req\req_install.py", line 673, in uninstall
for path in pip.wheel.uninstallation_paths(dist):
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\wheel.py", line 512, in unique
for item in fn(*args, **kw):
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\wheel.py", line 531, in uninstallation_paths
r = csv.reader(FakeFile(dist.get_metadata_lines('RECORD')))
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 1619, in get_metadata_lines
return yield_lines(self.get_metadata(name))
File "C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 1616, in get_metadata
return self._get(self._fn(self.egg_info, name)).decode("utf-8")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf2 in position 22365: invalid continuation byte
You are using pip version 7.1.2, however version 8.0.2 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
Je suis geussing cela a à voir avec mon hébreu nom d'utilisateur windows, Est-ce correct?
Puis-je mettre à niveau pip sans l'ouverture d'un nouvel utilisateur windows?
Veuillez changer votre titre, par exemple, pip --mise à niveau jette "UnicodeDecodeError" mais rien n'est meilleur que l'actuel. Sinon question intéressante...
OriginalL'auteur adiro | 2016-02-19
Vous devez vous connecter pour publier un commentaire.
Il ressemble à un bug dans le pip, où il est en supposant que ses métadonnées sont stockées en tant que UTF-8.
Au lieu de cela, votre nom d'utilisateur semble être codée comme "windows-1255".
Vous pouvez essayer les suivantes:
C:\Users\עדי\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pip\_vendor\pkg_resources\__init__.py
utf-8
àmbcs
._csv_open
a écrit laRECORD
des fichiers installés en utilisant les paramètres régionaux par défaut l'encodage. Jamais en dépendent, en particulier sur Windows, depuis l'ANSI locale est tout, mais sans valeur. Je suis étonné de voir que de PEPs 376 et 427 n'ont rien à dire à propos de l'application de l'UTF-8 pour le contenu de ce fichier.Je recommande la conversion
site-packages\pip-7.1.2.dist-info\RECORD
en UTF-8, c'est à dire lire'cp1255'
et de l'écrire comme'utf-8'
.La ligne qui doit être changé? Cette réponse est obsolète pour Python36-32, malheureusement.
la version de Pip utilisez-vous?
Oh, attends, la mise à niveau de pep n'était pas un problème, C'est seulement lorsque j'essaie d'installer le paquet z3-solveur :/ (en cours d'exécution du pip version 9.0.1)
OriginalL'auteur Alastair McCormack