Есть ли функция библиотеки Python, которая пытается угадать кодировку символов в некоторых байтах? [Дубликат]
На этот вопрос уже есть ответ:
Как определить кодировку текста? 8 ответов Я пишу некоторое программное обеспечение для обработки почты на Python, которое встречает странные байты в полях заголовка. Я подозреваю, что это просто искаженная почта; само сообщение претендует на то, чтобы быть us-ascii, так что я не думаю, что есть истинная кодировка, но я хотел бы получить строку в юникоде, приближающуюся к исходной, без броскаUnicodeDecodeError
.
Итак, я ищу функцию, которая принимаетstr
и, возможно, некоторые намеки и делает все, чтобы вернуть мнеunicode
. Я мог бы написать одну, конечно, но если такая функция существует, ее автор, вероятно, подумал бы немного глубже о лучшем способе сделать это.
Я также знаю, что дизайн Python предпочитает явное неявному и что стандартная библиотека разработана, чтобы избежать неявного волшебства при декодировании текста. Я просто хочу прямо сказать: «Иди и угадай».