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