mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 11:23:31 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			63 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
\declaremodule{standard}{email.Iterators}
 | 
						|
\modulesynopsis{Iterate over a  message object tree.}
 | 
						|
 | 
						|
Iterating over a message object tree is fairly easy with the
 | 
						|
\method{Message.walk()} method.  The \module{email.Iterators} module
 | 
						|
provides some useful higher level iterations over message object
 | 
						|
trees.
 | 
						|
 | 
						|
\begin{funcdesc}{body_line_iterator}{msg}
 | 
						|
This iterates over all the payloads in all the subparts of \var{msg},
 | 
						|
returning the string payloads line-by-line.  It skips over all the
 | 
						|
subpart headers, and it skips over any subpart with a payload that
 | 
						|
isn't a Python string.  This is somewhat equivalent to reading the
 | 
						|
flat text representation of the message from a file using
 | 
						|
\method{readline()}, skipping over all the intervening headers.
 | 
						|
\end{funcdesc}
 | 
						|
 | 
						|
\begin{funcdesc}{typed_subpart_iterator}{msg\optional{,
 | 
						|
    maintype\optional{, subtype}}}
 | 
						|
This iterates over all the subparts of \var{msg}, returning only those
 | 
						|
subparts that match the MIME type specified by \var{maintype} and
 | 
						|
\var{subtype}.
 | 
						|
 | 
						|
Note that \var{subtype} is optional; if omitted, then subpart MIME
 | 
						|
type matching is done only with the main type.  \var{maintype} is
 | 
						|
optional too; it defaults to \mimetype{text}.
 | 
						|
 | 
						|
Thus, by default \function{typed_subpart_iterator()} returns each
 | 
						|
subpart that has a MIME type of \mimetype{text/*}.
 | 
						|
\end{funcdesc}
 | 
						|
 | 
						|
The following function has been added as a useful debugging tool.  It
 | 
						|
should \emph{not} be considered part of the supported public interface
 | 
						|
for the package.
 | 
						|
 | 
						|
\begin{funcdesc}{_structure}{msg\optional{, fp\optional{, level}}}
 | 
						|
Prints an indented representation of the content types of the
 | 
						|
message object structure.  For example:
 | 
						|
 | 
						|
\begin{verbatim}
 | 
						|
>>> 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
 | 
						|
\end{verbatim}
 | 
						|
 | 
						|
Optional \var{fp} is a file-like object to print the output to.  It
 | 
						|
must be suitable for Python's extended print statement.  \var{level}
 | 
						|
is used internally.
 | 
						|
\end{funcdesc}
 |