Eu tive um problema de codificação semelhante. Eu usei o método normalize (). Eu estava recebendo um erro Unicode usando o método pandas .to_html () ao exportar meu quadro de dados para um arquivo .html em outro diretório. Acabei fazendo isso e funcionou ...
import unicodedata
O objeto dataframe pode ser o que você quiser, vamos chamá-lo de tabela ...
table = pd.DataFrame(data,columns=['Name','Team','OVR / POT'])
table.index+= 1
codifique os dados da tabela para que possamos exportá-los para o arquivo .html na pasta de modelos (este pode ser o local que você desejar :))
#this is where the magic happens
html_data=unicodedata.normalize('NFKD',table.to_html()).encode('ascii','ignore')
exportar string normalizada para arquivo html
file = open("templates/home.html","w")
file.write(html_data)
file.close()
Referência: documentação unicodedata