email.iterators
: Итераторы¶
Исходный код: Lib/email/iterators.py.
Итерация по дереву объектов сообщений довольно проста с помощью метода Message.walk
. Модуль email.iterators
обеспечивает некоторые полезные итерации более высокого уровня над деревьями объектов сообщений.
-
email.iterators.
body_line_iterator
(msg, decode=False)¶ Выполняет итерацию по всем полезным нагрузкам во всех подчасти msg, возвращая строку за строкой. Он пропускает все заголовки подразделов и пропускает все подразделы с полезной нагрузкой, которая не является строкой Python. Это в некоторой степени эквивалентно чтению плоского текстового представления сообщения из файла с помощью
readline()
, пропуская все промежуточные заголовки.Необязательный декод передается в
Message.get_payload
.
-
email.iterators.
typed_subpart_iterator
(msg, maintype='text', subtype=None)¶ Перебирает все подчасти msg, возвращая только те подчасти, которые соответствуют MIME-типу, указанному maintype и subtype.
Обратите внимание, что subtype является необязательным; если он опущен, то сопоставление MIME-типа подчасти выполняется только с основным типом. maintype также необязателен; по умолчанию он принимает значение text.
Таким образом, по умолчанию
typed_subpart_iterator()
возвращает каждый подраздел, который имеет MIME-тип text/*.
Следующая функция была добавлена в качестве полезного инструмента отладки. Она не должна рассматриваться как часть поддерживаемого публичного интерфейса пакета.
-
email.iterators.
_structure
(msg, fp=None, level=0, include_default=False)¶ Выводит представление типов содержимого структуры объекта сообщения в виде отступов. Например:
>>> msg = email.message_from_file(somefile) >>> _structure(msg) multipart/mixed text/plain text/plain multipart/digest message/rfc822 text/plain message/rfc822 text/plain message/rfc822 text/plain message/rfc822 text/plain message/rfc822 text/plain text/plain
Необязательный fp - это файлоподобный объект для печати вывода. Он должен быть пригоден для функции Python
print()
. level используется внутренне. include_default, если true, печатает также тип по умолчанию.