Eventuali duplicati:
Python UnicodeDecodeError - Am I misunderstanding encode?Python: disinfetti una stringa per unicode?
ho una stringa che sto cercando di fare sicuro per la funzione unicode()
:
>>> s = " foo “bar bar ” weasel"
>>> s.encode('utf-8', 'ignore')
Traceback (most recent call last):
File "<pyshell#8>", line 1, in <module>
s.encode('utf-8', 'ignore')
UnicodeDecodeError: 'ascii' codec can't decode byte 0x93 in position 5: ordinal not in range(128)
>>> unicode(s)
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
unicode(s)
UnicodeDecodeError: 'ascii' codec can't decode byte 0x93 in position 5: ordinal not in range(128)
Sto dando agitando intorno Qui. Cosa devo fare per rimuovere i caratteri non sicuri dalla stringa?
Un po 'correlato a questo question, anche se non sono riuscito a risolvere il mio problema da esso.
Questo fallisce anche:
>>> s
' foo \x93bar bar \x94 weasel'
>>> s.decode('utf-8')
Traceback (most recent call last):
File "<pyshell#13>", line 1, in <module>
s.decode('utf-8')
File "C:\Python25\254\lib\encodings\utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x93 in position 5: unexpected code byte
Mi chiedo perché 'str' abbia una funzione' encode' e se il parametro "encoding" specifichi la codifica del risultato, o la codifica dell'input. Che cosa stai tentando di fare esattamente qui? – Thanatos
Si prega di controllare [questo] (http://stackoverflow.com/questions/368805/python-unicodedecodeerror-am-i-misunderstanding-encode/370199#370199) rispondere a una domanda correlata: "Python UnicodeDecodeError - Mi capita di non capire la codifica? " – tzot
Per coloro che cercano una soluzione per disinfettare caratteri speciali unicode in (X) HTML, prova' u'my unicode str'.encode ('ascii', 'xmlcharrefreplace') '. – toszter