Installation de versions de paquets spécifiques avec pip

j'essaie d'installer la version 1.2.2 de L'adaptateur MySQL_python, en utilisant un nouveau virtualenv créé avec l'option --no-site-packages . La version actuelle indiquée dans PyPi est 1.2.3 . Est-il possible d'installer l'ancienne version? J'ai trouvé un article disant que cela devrait le faire:

pip install MySQL_python==1.2.2

une fois installé, cependant, il affiche toujours MySQL_python-1.2.3-py2.6.egg-info dans le site de paquets. Est-ce un problème spécifique à ce package, ou suis J'ai fait quelque chose de mal?

886
demandé sur Anthon 2011-03-08 01:58:13

6 réponses

D'abord, je vois deux problèmes avec ce que vous essayez de faire. Puisque vous avez déjà une version installée, vous devez désinstaller le pilote existant ou utiliser pip install -I MySQL_python==1.2.2

cependant, vous découvrirez bientôt que cela ne fonctionne pas. Si vous regardez le journal d'installation de pip, ou si vous faites un pip install -Iv MySQL_python==1.2.2 , vous constaterez que le lien D'URL PyPI ne fonctionne pas pour MySQL_python v1.2.2. Vous pouvez le vérifier ici: http://pypi.python.org/pypi/MySQL-python/1.2.2

le lien de téléchargement 404s et les liens d'URL de repli sont redirigés à l'infini en raison de sourceforge.net la mise à jour récente et L'URL périmée de PyPI.

Afin d'installer correctement le pilote, vous pouvez suivre ces étapes:

pip uninstall MySQL_python
pip install -Iv http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.2/MySQL-python-1.2.2.tar.gz/download
645
répondu Mahmoud Abdelkader 2012-07-25 11:36:12

vous pouvez même utiliser une gamme de versions avec la commande pip install . Quelque chose comme ceci:

pip install 'stevedore>=1.3.0,<1.4.0'
285
répondu user1978556 2015-11-19 19:51:23

Une façon comme suggéré dans la section ce post est de mentionner la version de pip comme

pip install -Iv MySQL_python==1.2.2

c'est-à-dire utiliser == et mentionner le numéro de version pour installer uniquement cette version. -I, --ignore-installed ignore les paquets déjà installés.

95
répondu Srikar Appalaraju 2017-05-23 12:10:48

je crois que si vous avez déjà un paquet qu'il a installé, pip ne l'écrasera pas avec une autre version. Utilisez -I pour ignorer les versions précédentes.

35
répondu dappawit 2011-03-07 23:13:22

pour installer une version package python spécifique que ce soit la première fois, une mise à niveau ou une utilisation de niveau inférieur:

pip install --force-reinstall MySQL_python==1.2.4

MySQL_python la version 1.2.2 n'étant pas disponible, j'ai utilisé une version différente. Pour visualiser toutes les versions de paquets disponibles à partir d'un index, exclure la version:

pip install MySQL_python==
26
répondu Zach Weg 2018-04-05 07:00:00

Puisqu'il s'agissait d'un changement de rupture introduit dans la version 10 de pip, j'ai déclassé à une version compatible:

pip install 'pip<10' 

cette commande indique à pip d'installer une version du module inférieure à la version 10. Faites ceci dans un virutalenv pour que vous ne gâchiez pas votre installation de site de Python.

1
répondu Trenton 2018-09-02 00:54:25