[python] Python 디코딩 유니 코드는 지원되지 않습니다.

Python에서 인코딩에 문제가 있습니다. 다른 방법을 시도했지만 출력을 UTF-8로 인코딩하는 가장 좋은 방법을 찾지 못하는 것 같습니다.

이것이 내가하려는 것입니다.

result = unicode(google.searchGoogle(param), "utf-8").encode("utf-8")

searchGoogle에 대한 첫 번째 Google 결과를 반환합니다 param.

이것은 내가 얻는 오류입니다.

exceptions.TypeError: decoding Unicode is not supported

이 오류를 피하기 위해 Python이 내 출력을 UTF-8로 인코딩하는 방법을 아는 사람이 있습니까?



답변

외모 좋아 google.searchGoogle(param)이미 반환 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

그래서 당신이 원하는 것은 :

result = google.searchGoogle(param).encode("utf-8")

참고로, 코드는 utf-8인코딩 된 문자열 을 반환 할 것으로 예상 하므로 동일한 인코딩을 unicode()사용 하여 디코딩 (사용 )하고 다시 인코딩 (사용 ) 하는 요점은 무엇 .encode()입니까?


답변