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?
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
 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'
  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.  
  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.  
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==
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.