В настоящее время у меня есть простой IRC-бот, написанный на python.
Так как я перенес его на python 3.0, который различает байты и строки юникода, у меня начались проблемы с кодированием. В частности, с другими, не отправляющими UTF-8.
Теперь я мог бы просто сказать всем отправлять UTF-8 (что они должны делать независимо), но еще лучшим решением было бы попытаться заставить python по умолчанию использовать другую кодировку или что-то подобное.
Пока код выглядит так:
data = str(irc.recv(4096),"UTF-8", "replace")
Что, по крайней мере, не вызывает исключений. Однако я хочу пройти мимо этого: я хочу, чтобы мой бот по умолчанию использовал другую кодировку, или попытался как-то обнаружить «проблемные символы».
Кроме того, мне нужно выяснить, что же на самом деле представляет собой таинственная кодировка, которую использует mIRC - поскольку другие клиенты работают нормально и отправляют UTF-8, как они должны.
Как мне поступить так?