Sto programmando in Python e sto ottenendo informazioni da una pagina Web attraverso la libreria urllib2
. Il problema è che la pagina in grado di fornire me con caratteri non ASCII, come 'ñ'
, 'á'
, ecc Nel momento urllib2
ottiene questo personaggio, provoca un'eccezione, in questo modo:Come gestire i caratteri Unicode (non ASCII) in Python?
File "c:\Python25\lib\httplib.py", line 711, in send
self.sock.sendall(str)
File "<string>", line 1, in sendall:
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 74: ordinal not in range(128)
ho bisogno di gestire quei personaggi. Voglio dire, non voglio gestire l'eccezione ma continuare il programma. C'è un modo per, per esempio (non so se è qualcosa di stupido), usare un altro codec piuttosto che l'ASCII? Perché devo lavorare con quei personaggi, inserirli in un database, ecc.
Sarebbe utile se potessi dire, anche, se stai usando Python 3+, o qualcosa prima. –
Non potrebbe essere Py3k poiché il modulo urllib2 è stato rimosso (inserito in urllib) ... –
Duplicato: http://stackoverflow.com/questions/1020892/python-urllib2-read-to-unicode –