Para estender a resposta aceita somente para link acima, considere as seguintes alterações em seu
pymysql
atual instalar. Com o MySQL 8, a API mysql-python não reconhece conjuntos de caracteres possivelmente mais novos e, portanto, o KeyError
gerado . Para resolver, localize o connectors.py script sob o
pymysql
módulo encontrado neste diretório:print(pymysql.__file__)
Faça backup do connectors.py original roteiro. Em seguida, incorpore as seguintes alterações.
Original (linhas 1268-1269)
self.server_language = lang
self.server_charset = charset_by_id(lang).name
Substituir (linhas 1268 - 1272)
self.server_language = lang
try:
self.server_charset = charset_by_id(lang).name
except KeyError:
self.server_charset = None
Tenha cuidado para incluir guias ocultas no recuo com as linhas acima.
Referência