Кодировки кириллических символов

Я парсил ost файл из outlook и некоторые сообщения он дешифровал неверно. Грубо говоря при расшифровки через utf-8 получается это "дНАПШИ ДЕМЭ", а должен быть "Добрый день".

Я пробовал разные кодировки но ни одна из них не сработала.

encoded_text = b'\xd0\xb4\xd0\x9d\xd0\x90\xd0\x9f\xd0\xa8\xd0\x98 \xd0\x94\xd0\x95\xd0\x9c\xd0\xad'


encodings = ['utf-8', 'windows-1251', 'koi8-r', 'cp866', 'iso-8859-5', 'mac-cyrillic']


for encoding in encodings:
    try:
        decoded_text = encoded_text.decode(encoding)
        print(f"Кодировка {encoding}: {decoded_text}")
    except Exception as e:
        print(f"Ошибка декодирования для кодировки {encoding}: {e}")

Вывод был следующим:

Кодировка utf-8: дНАПШИ ДЕМЭ
Ошибка декодирования для кодировки windows-1251: 'charmap' codec can't decode byte 0x98 in position 11: character maps to <undefined>
Кодировка koi8-r: п╢п²п░п÷п╗п≤ п■п∙п°п╜
Кодировка cp866: ╨┤╨Э╨Р╨Я╨и╨Ш ╨Ф╨Х╨Ь╨н
Кодировка iso-8859-5: аДаЈаааа­

Ответы (2 шт):

Автор решения: rotabor

Copylot на мой запрос "Проверь все кодировки для русского языка для текста "\xd0\xb4\xd0\x9d\xd0\x90\xd0\x9f\xd0\xa8\xd0\x98 \xd0\x94\xd0\x95\xd0\x9c\xd0\xad", а также их последовательное применение. Должен быть осмысленный текст на русском языке."

выдал следующее:

"Извините за недоразумение. Давайте разберемся с кодировкой текста “дНАПШИ ДЕМЭ”.

  1. UTF-8: Если мы предположим, что текст был закодирован в UTF-8, то он будет выглядеть как “дНАПШИ ДЕМЭ”. Это осмысленный текст на русском языке.
  2. Windows-1251 (CP1251): Если мы рассмотрим кодировку Windows-1251 (CP1251), то текст “дНАПШИ ДЕМЭ” будет выглядеть так: “АДРЕСЫ ДЕМЭ”.
  3. KOI8-R: В кодировке KOI8-R текст “дНАПШИ ДЕМЭ” будет выглядеть как “ТОМ ПОСТУПИЛ ХОРОШО”.
  4. ISO-8859-5: В кодировке ISO-8859-5 текст “дНАПШИ ДЕМЭ” будет выглядеть как “ТОМ ПОСТУПИЛ ХОРОШО”."

Так что друзья, вы ещё не знаете всех возможностей ИИ. :-)

→ Ссылка
Автор решения: DRON DG

Благодаря товарищам Nofate и Алексей Р чьи комментарии я не могу пометить как правильные ответ оказался прост. Текст кодировался и декодировался много раз в результате алгоритм его расшифровки выглядел следующим образом:

decoded_text = encoded_text.decode('utf-8').encode('koi8-r').decode('windows-1251')
→ Ссылка