web-dev-qa-db-fra.com

Impossible d'installer python module urlparse

un programme écrit en Python 2.7 se plaint que ImportError: No module named 'urlparse'. J'ai donc besoin d'installer le module, mais je ne suis pas capable de le faire. Le module existe, il est décrit par exemple. à https://docs.python.org/2/library/urlparse.html . Cependant, ni apt-get install, ni pip install ne peuvent trouver un module nommé urlparse, python-urlparse, urllib, python-urllib... - Je reçois des messages tels que Could not find any downloads that satisfy the requirement .... La seule exception est le paquet python-urllib3 qui contient probablement les fichiers nécessaires mais pour Python 3 et l'installation de ce qui n'a pas aidé.

J'ai installé pip, pas pip3 car j'ai besoin du module pour Python 2 (pip 1.4.1 from /usr/lib/python2.7/dist-packages (python 2.7)). Mon Ubuntu est Xubuntu 13.10.

Où est le problème, s'il vous plaît? pip recherche-t-il le module aux bons endroits? Je ne sais pas dans quels endroits il faut chercher ...

9
MoreFamed

urlparse fait partie de la bibliothèque standard Python 2. Il est livré avec Python. il n'est pas emballé séparément sur PyPI et al. urlparse.urlparse (la fonction) a été renommé dans Python 3 en urllib.parse.

Alors, quelques choses à regarder:

  • Votre programme Python 2 s'exécute peut-être sous Python 3. Vérifiez le script de lancement pour savoir comment il sélectionne quelle version de Python. Il devrait probablement commencer #!/usr/bin/env python2 mais également vérifier (en exécutant env python2) que cela charge jusqu'à Python 2.

  • Quelque chose a mangé /usr/lib/python2.7/urlparse.py, auquel cas réinstaller le paquet libpython2.7-stdlib avec:

    Sudo apt-get install --reinstall libpython2.7-stdlib
    
  • Ou vous avez un fichier local causant des dommages ...

13
Oli

Si vous devez écrire du code compatible avec Python2 et Python3, vous pouvez utiliser le programme d’importation suivant.

try:
    from urllib.parse import urlparse
except ImportError:
    from urlparse import urlparse
10
Tully

Si vous utilisez python 2, installez-le en utilisant

pip install urlparse2
2
Waqar Detho