91 votes

pip install' échoue pour chaque paquet ("Could not find a version that satisfies the requirement")

pip install <package name> échoue pour chaque paquet pour moi. Voici ce que j'obtiens :

Could not find a version that satisfies the requirement <package-name
(from versions: )
No matching distribution found for <package-name>

I scie similaire questions sur Stack Overflow, mais elles ne semblent pas être totalement liées à celle-ci.

En outre, ce poste suggère que cela peut se produire si PyPI est en panne ou si mon adresse IP est sur liste noire. Il semble que les deux ne soient pas vrais dans mon cas.

pip affiche la mise à jour de l'exécution pip install --upgrade pip .

0 votes

Pouvez-vous donner un exemple de la façon dont vous procédez ? pip install <package name> avec un nom de paquet réel, ou postez simplement votre requirements.txt ? merci

2 votes

J'en ai essayé beaucoup. Même pip install django ne fonctionne pas. Il a toujours fonctionné auparavant.

0 votes

Avez-vous essayé de mettre à jour la version de pip ? Quelles versions de python et de python-pip utilisez-vous ? Êtes-vous sûr que votre machine est connectée à Internet ?

160voto

Anupam Points 7016

La mise à jour de la tuyauterie se fait comme suit :

curl https://bootstrap.pypa.io/get-pip.py | python

Remarque : il se peut que vous deviez utiliser sudo python ci-dessus s'il ne s'agit pas d'un environnement virtuel.

Ce qui se passe :

Les sites Python.org cessent de prendre en charge les versions 1.0 et 1.1 de TLS. Cela signifie que Mac OS X version 10.12 (Sierra) ou plus anciennes ne pourront pas utiliser pip à moins de mettre à jour pip comme indiqué ci-dessus.

(Il est à noter que la mise à niveau de pip via pip install --upgrade pip ne le mettra pas non plus à jour correctement. C'est le problème de l'œuf et de la poule)

Le présent l'explique (merci à ce message sur Twitter ) :

Les utilisateurs de Mac qui utilisent pip et PyPI :

Si vous utilisez macOS/OS X version 10.12 ou plus ancienne, vous devez mettre à jour vers la dernière version de pip (9.0.3) pour vous connecter au Python Package Index sécurisé :

curl https://bootstrap.pypa.io/get-pip.py | python

et nous vous recommandons de le faire avant le 8 avril.

Pip 9.0.3 prend en charge TLSv1.2 lorsqu'il est exécuté sous le système Python sur macOS < 10.13. Notes de version officielles : https://pip.pypa.io/en/stable/news/

En outre, le Page d'état Python :

Terminé - Les interruptions de service sont terminées, et TLSv1.0 et TLSv1.1 ont été désactivés. 11 avril, 15:37 UTC

Mise à jour - Les coupures de courant ont été transformées en coupures de courant, les protocoles TLSv1.0 et TLSv1.1 seront toujours rejetés avec un HTTP 403. 8 avril, 15:49 UTC

Enfin, pour éviter d'autres erreurs d'installation, assurez-vous de mettre à jour setuptools après avoir fait ce qui précède :

pip install --upgrade setuptools

0 votes

Merci, cela a parfaitement fonctionné pour moi sur MacOS, avec une erreur lors de l'installation d'un paquet : Could not fetch URL https://pypi.python.org/simple/pip/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:661) - skipping

0 votes

Fonctionne sur mac 10.11.6

6 votes

Impossible d'installer les paquets en raison d'une erreur d'environnement : [Errno 13] Permission denied : '/Library/Python/2.7/site-packages/setuptools-1.3.1-py2.7.egg' Envisagez d'utiliser la commande --user ou vérifier les autorisations. .... Dois-je ajouter l'option --user ?

10voto

Guybrush Points 1515

La prise en charge de TLS 1.0 et 1.1 a été abandonnée pour PyPI. Si votre système n'utilise pas une version plus récente, cela pourrait expliquer votre erreur.

Pourriez-vous essayer de réinstaller pip sur l'ensemble du système, afin de mettre à jour les dépendances de votre système vers une version plus récente de TLS ?

Cela semble être lié à Impossible d'installer les bibliothèques Python

Voir la réponse de Dominique Barton :

Apparemment, Pip essaie d'accéder à PyPI via HTTPS (qui est crypté et correct), mais avec une ancienne version SSL (non sécurisée). Votre système semble ne pas être à jour. Il pourrait être utile de mettre à jour vos paquets.

Sur les systèmes basés sur Debian, j'essaierais :

apt-get update && apt-get upgrade python-pip

Sur les systèmes basés sur Red Hat Linux :

yum update python-pip # (or python2-pip, at least on Red Hat Linux 7)

Sur Mac :

sudo easy_install -U pip

Vous pouvez également essayer de mettre à jour openssl séparément.

0 votes

Merci pour le conseil mais sudo easy_install -U pip n'a pas fonctionné pour moi sur Mac OSX 10.11.X. Searching for pip Reading https://pypi.python.org/simple/pip/ Couldn't find index page for 'pip' (maybe misspelled?) Scanning index of all packages (this may take a while) Reading https://pypi.python.org/simple/ No local packages or download links found for pip error: Could not find suitable distribution for Requirement.parse('pip')

0 votes

Je suis désolé, je ne suis pas un utilisateur d'OSX, donc je ne peux pas vous aider sur ce point. Jetez un coup d'œil à la réponse de @Anupam pour savoir comment (ré)installer pip sur OSX.

0 votes

Oui, cela a fonctionné pour moi. I am @Anupam :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X