"module" non ha attributo "urlencode"


108

Quando provo a seguire l' esempio del Wiki di Python relativo alla codifica dell'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()

Viene visualizzato un errore sulla seconda riga:

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

Cosa mi sto perdendo?


4
Il "2" nel tuo URL.
Ignacio Vazquez-Abrams

Risposte:



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

3

Usi i documenti di Python 2 ma scrivi il tuo programma in Python 3.


Bene, è un tag nel tuo problema e il collegamento punta ai documenti di Python 2.
Malik Brahimi
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.