'module' n'a pas d'attribut 'urlencode'


108

Quand j'essaye de suivre l' exemple du Python Wiki lié au codage d'URL:

>>> import urllib
>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
>>> f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query", params)
>>> print f.read()

Une erreur est générée sur la deuxième ligne:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'urlencode'

Qu'est-ce que je rate?


4
Le "2" dans votre URL.
Ignacio Vazquez-Abrams

Réponses:



35
import urllib.parse
urllib.parse.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})

3

Vous utilisez la documentation Python 2 mais écrivez votre programme en Python 3.


Eh bien, c'est une balise dans votre problème et le lien pointe vers la documentation Python 2.
Malik Brahimi
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.