open - La decodificación de Python Unicode no es compatible
python unicode utf-8 (1)
Estoy teniendo un problema con mi codificación en Python. He intentado diferentes métodos pero parece que no puedo encontrar la mejor manera de codificar mi salida a UTF-8.
Esto es lo que intento hacer:
result = unicode(google.searchGoogle(param), "utf-8").encode("utf-8")
searchGoogle
devuelve el primer resultado de Google para param
.
Este es el error que obtengo:
exceptions.TypeError: decoding Unicode is not supported
¿Alguien sabe cómo puedo hacer que Python codifique mi salida en UTF-8 para evitar este error?
Parece que google.searchGoogle(param)
ya devuelve unicode
:
>>> unicode(u''foo'', ''utf-8'')
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
unicode(u''foo'', ''utf-8'')
TypeError: decoding Unicode is not supported
Entonces lo que quieres es:
result = google.searchGoogle(param).encode("utf-8")
Como nota al margen, su código espera que devuelva una cadena codificada en utf-8
entonces, ¿qué sentido tenía decodificarla (usando unicode()
) y codificando de nuevo (usando .encode()
) usando la misma codificación?