Lorsque j'essaie de suivre le exemple de Wiki Python 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?
urllib
a été scindé en Python 3. La fonction urllib.urlencode()
est maintenant urllib.parse.urlencode()
, et la fonction urllib.urlopen()
est maintenant urllib.request.urlopen()
.
import urllib.parse
urllib.parse.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
Vous utilisez la documentation Python 2 mais écrivez votre programme dans Python 3.