email.iterators
: 이터레이터¶
소스 코드: Lib/email/iterators.py
메시지 객체 트리를 이터레이트 하는 것은 Message.walk
메서드를 사용하면 매우 쉽습니다. email.iterators
모듈은 메시지 객체 트리에 대한 유용한 고수준 이터레이션을 제공합니다.
- email.iterators.body_line_iterator(msg, decode=False)¶
msg의 모든 서브 파트에 있는 모든 페이 로드를 이터레이트 하여, 문자열 페이 로드를 한 줄씩 반환합니다. 모든 서브 파트 헤더를 건너뛰고, 파이썬 문자열이 아닌 페이 로드가 있는 서브 파트를 건너뜁니다. 이는
readline()
을 사용하여 파일에서 메시지의 평평한(flat) 텍스트 표현을 읽는 것과 다소 유사하며, 모든 중간 헤더를 건너뜁니다.선택적 decode는
Message.get_payload
로 전달됩니다.
- email.iterators.typed_subpart_iterator(msg, maintype='text', subtype=None)¶
msg의 모든 서브 파트를 이터레이트 하여, maintype과 subtype으로 지정된 MIME 유형과 일치하는 서브 파트만 반환합니다.
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는 출력을 인쇄할 파일류 객체입니다. 파이썬의
print()
함수에 적합해야 합니다. level은 내부적으로 사용됩니다. include_default가 참이면, 기본 유형도 인쇄합니다.