Как экспортировать DataFrame в Html с помощью кодировки utf-8?

Я продолжаю получать:

UnicodeEncodeError: 'ascii' codec can't encode characters in position 265-266: ordinal not in range(128) 

когда я пытаюсь:

 df.to_html("mypage.html") 

вот пример того, как воспроизвести проблему:

 df = pd.DataFrame({"a": [u'Rue du Gu\xc3\xa9, 78120 Sonchamp'], "b": [u"some other thing"]}) df.to_html("mypage.html") 

список элементов в "a" имеет тип "unicode" .

когда я хочу экспортировать его в csv, он работает, потому что вы можете сделать:

 df.to_csv("myfile.csv", encoding="utf-8") 

Ваша проблема в другом коде. В вашем примере кода есть строка Unicode, которая была неправильно декодирована как latin1 , Windows-1252 или аналогичная, поскольку в ней есть последовательности UTF-8. Здесь я отменяю плохое декодирование и redecode как UTF-8, но вам нужно найти, где выполняется неправильное декодирование:

 >>> s = u'Rue du Gu\xc3\xa9, 78120 Sonchamp' >>> s.encode('latin1').decode('utf8') u'Rue du Gu\xe9, 78120 Sonchamp' >>> print(s.encode('latin1').decode('utf8')) Rue du Gué, 78120 Sonchamp