Экспорт Gmail с использованием Python imaplib - текст искажен проблемами новой строки
Вопрос
Я использую следующий код для экспорта всех писем в определенную папку Gmail.
Он работает хорошо, поскольку вытаскивает все электронные письма, которые я ожидаю, но он (или я), похоже, искажает кодировку CR / новой строки.
Код:
родовое словоМоя проблема в том, что к тому времени, когда я добираюсь до объекта, он засоряется символом '= 0A', который, как я предполагаю, неправильно интерпретируется флагом новой строки или возврата каретки.
Я могу найти его в шестнадцатеричном формате, [d3 03 03 0a], но поскольку это не «символы», я не могу найти способ для str.replace () удалить части.На самом деле мне не нужны флаги новой строки.
Я мог бы преобразовать всю строку в шестнадцатеричный и сделать замену сортировки / регулярного выражения, но это похоже на уничтожение - когда проблема в кодировании / чтении исходных данных
Что я вижу:
родовое словочего я хочу:
родовое словоРешение
То, что вы видите, представляет собой кодировку Quoted Printable .
Попробуйте изменить:
родовое словокому:
родовое словоДля получения дополнительной информации см. Стандартные кодировки в модуле кодеков Python.
Другие советы
Всего 2 дополнительных пункта, которые не давали покоя в течение дня. Я делаю это на уровне полезной нагрузки, чтобы вы могли обработать email_message, чтобы получить адреса электронной почты и т. Д. Из своей почты.
2 Вам также необходимо декодировать набор кодировок, у меня были проблемы с людьми, копировавшими и вставляющими HTML-код с веб-страниц и содержимое из Word-документов и т. д. в электронные письма, которые я тогда пытался обработать.
родовое словоНадеюсь, это кому-то поможет!
Дэйв