email.encoders
: Кодировки¶
Исходный код: Lib/email/encoders.py
Модуль является частью устаревшего API электронной почты (Compat32
). В
новом API функциональность обеспечивается параметром cte метода
set_content()
.
Модуль устарел в Python 3. Функции, обеспеченные здесь, не должны быть
вызваны явно, так как класс MIMEText
устанавливает тип контента и заголовок
CTE, используя _subtype, и _charset значения прошел во время
instaniation того класса.
Оставшимся текстом в этом разделе является первоначальная документация модуля.
При создании объектов Message
с нуля часто требуется кодировать полезные
нагрузки для транспорта через соответствующие почтовые серверы. Это особенно
верно для сообщений типа image/* и text/*, содержащих двоичные данные.
Пакет email
обеспечивает некоторый удобный кодеры в своем модуле
encoders
. Эти кодеры - на самом деле используемый MIMEAudio
и
конструкторами класса MIMEImage
, чтобы обеспечить кодирование по умолчанию.
Все функции кодировщика принимают ровно один аргумент, объект сообщения для
кодирования. Они обычно извлекают полезный груз, кодируют его и перезагружают
полезный груз к этому недавно кодированный значение. Они также должны
соответствующим образом установить заголовок Content-Transfer-Encoding.
Обратите внимание, что эти функции не являются значимыми для многопозиционного
сообщения. Они должны быть применены к отдельным подразделениям и поднимут
TypeError
, если передано сообщение, тип которого многослойный.
Ниже приведены функции кодировка:
-
email.encoders.
encode_quopri
(msg)¶ Кодирование полезную нагрузку в печатаемую в кавычках форму и устанавливает для заголовка Content-Transfer-Encoding значение
quoted-printable
[1]. Это - хороший кодировка, чтобы использовать, когда большая часть вашего полезного груза - нормальные пригодные для печатания данные, но содержит несколько непечатных знаков.
-
email.encoders.
encode_base64
(msg)¶ Кодирование полезных данных в форму base64 и устанавливает заголовок Content-Transfer-Encoding в значение
base64
. Это - хороший кодировка, чтобы использовать, когда большая часть вашего полезного груза - непечатные данные, так как это - более компактная форма, чем указанный - пригодный для печатания. Недостаток base64 кодировка заключается в том, что он делает текст нечеловеческим.
-
email.encoders.
encode_7or8bit
(msg)¶ Это на самом деле не изменяет полезный груз сообщения, но он действительно устанавливает заголовок Content-Transfer-Encoding или в
7bit
или в8bit
как соответствующий, на основе данных о полезном грузе.
-
email.encoders.
encode_noop
(msg)¶ Это ничего не делает; он даже не устанавливает заголовок Content-Transfer-Encoding.
Сноски
[1] | Обратите внимание, что кодировка с encode_quopri() также кодирует
все табы и символы пробелов в данных. |