Besoin d'installer urllib2 pour Python 3.5.1

je lance Python 3.5.1 pour Mac. Je veux utiliser urllib2. J'ai essayé de l'installer, mais on m'a dit qu'il avait été divisé en urllib.demande et urllib.erreur pour Python 3.

ma commande (qui s'exécute à partir du répertoire de la bin framework pour l'instant parce qu'elle n'est pas dans mon chemin):

sudo ./pip3 install urllib.request

Renvoie:

Could not find a version that satisfies the requirement urllib.request (from versions: )
No matching distribution found for urllib.request

j'ai déjà eu la même erreur lorsque j'ai essayé d'installer urllib2 en une seule fois.

45
demandé sur Martijn Pieters 2015-12-26 23:40:15

4 réponses

avertissement: les recherches de sécurité ont trouvé plusieurs paquets empoisonnés sur PyPI, y compris un paquet nommé urllib "téléphone maison" lors de l'installation. Si vous avez utilisé pip install urllib quelque temps après juin 2017, supprimez ce paquet dès que possible.

Vous ne pouvez pas, et vous n'avez pas besoin d'.

urllib2 est le nom de la bibliothèque inclus dans Python 2. Vous pouvez utilisez le urllib.request bibliothèque inclus avec Python 3, à la place. urllib.request bibliothèque fonctionne de la même manière urllib2 fonctionne en Python 2. Parce que c'est déjà inclus vous n'avez pas besoin de l'installer.

Si vous suivez un tutoriel qui vous dit d'utiliser urllib2 alors vous verrez que vous allez rencontrer plus de problèmes. Votre tutoriel a été écrit pour Python 2, pas Python 3. Trouvez un autre tutoriel, ou installez Python 2.7 et continuez votre tutoriel sur cette version. Vous trouverez urllib2 vient avec cette version.

alternativement, installez le requests bibliothèque pour une API de plus haut niveau et plus facile à utiliser. Ça marchera sur Python 2 et 3.

88
répondu Martijn Pieters 2017-09-18 12:04:56

par docs:

Remarque:. Le module urllib2 a été divisé en plusieurs modules en Python 3 nommés urllib.demande et urllib.erreur. L'outil 2to3 adaptera automatiquement les importations lors de la conversion de vos sources en Python 3.

il semble Donc qu'il est impossible de faire exactement ce que vous voulez, mais vous pouvez utiliser des python3 fonctions de urllib.request.

14
répondu Ilya V. Schurov 2015-12-26 20:43:43

Au début de votre script python devraient être les suivants:

import urllib2

après cela, vous pouvez procéder avec un exemple libre comme suit:

response = urllib2.urlopen('http://pythonforbeginners.com/')
print response.info()
html = response.read()
response.close()  # best practice to close the file

ou vous procéder, après le 'importation urllib2" avec ce gratuit exemple de la manière suivante:

page = urllib2.urlopen('http://0.0.0.0')
print page.info()
2
répondu dschinn1001 2018-07-13 08:58:28

apt-get install python-urllib3 # for python 2

apt-get install python3-urllib3 # for python 3



ou



pip install urllib3 # pour python 2

pip3 installer urllib3 # pour python 3

-1
répondu ANK 2017-11-13 14:25:01