Содержание страницы
18.8. MimeWriter – Универсальный модуль записи MIME-файлов¶MimeWriter – Generic MIME file writer
Устарело с версии 2.3: Пакет email следует использовать вместо модуля MimeWriter
. Этот модуль присутствует только для поддержания обратной совместимости.
Этот модуль определяет класс MimeWriter. Класс MimeWriter
реализует базовый форматировщик для создания многочастных MIME-файлов. Он
не перемещается по выходному файлу и не использует большие объёмы буферной
памяти. Части должны записываться в том порядке, в котором они должны находиться в
итоговом файле. MimeWriter буферизует добавляемые заголовки, что позволяет
переставлять их порядок.
-
class
MimeWriter.MimeWriter(fp)¶ Возвращает новый экземпляр класса
MimeWriter. Единственный передаваемый аргумент, fp, – это файловый объект для записи. Обратите внимание, что вместо него можно также использовать объектStringIO.
18.8.1. Объекты MimeWriter¶MimeWriter Objects
Экземпляры MimeWriter имеют следующие методы:
-
MimeWriter.addheader(key, value[, prefix])¶ Добавляет строку заголовка в MIME-сообщение. Параметр key – это имя заголовка, а value, очевидно, задаёт значение заголовка. Необязательный аргумент prefix определяет, куда вставляется заголовок;
0означает добавление в конец,1– вставку в начало. По умолчанию заголовок добавляется в конец.
-
MimeWriter.flushheaders()¶ Записывает (и забывает) все накопленные на данный момент заголовки. Это полезно, если тело части не требуется вовсе, например, для подчасти типа message/rfc822, которая (не по назначению) используется для хранения некоторой информации, похожей на заголовки.
-
MimeWriter.startbody(ctype[, plist[, prefix]])¶ Возвращает файлоподобный объект, который можно использовать для записи тела сообщения. Тип содержимого устанавливается в указанный ctype, а необязательный параметр plist предоставляет дополнительные параметры для объявления типа содержимого. prefix работает как в
addheader(), за исключением того, что по умолчанию вставка производится в начало.
-
MimeWriter.startmultipartbody(subtype[, boundary[, plist[, prefix]]])¶ Возвращает файлоподобный объект, который можно использовать для записи тела сообщения. Кроме того, этот метод инициализирует многочастный код, где subtype задаёт подтип multipart, boundary может содержать заданную пользователем спецификацию границы, а plist предоставляет необязательные параметры для подтипа. prefix работает как в
startbody(). Подчасти следует создавать с помощьюnextpart().
-
MimeWriter.nextpart()¶ Возвращает новый экземпляр
MimeWriter, представляющий отдельную часть в многочастном сообщении. Его можно использовать для записи части, а также для создания рекурсивно сложных многочастных сообщений. Перед использованиемnextpart()сообщение должно быть инициализировано с помощьюstartmultipartbody().
-
MimeWriter.lastpart()¶ Используется для обозначения последней части многочастного сообщения, и его следует всегда использовать при записи многочастных сообщений.