/
opt
/
alt
/
python27
/
lib64
/
python2.7
/
email
/
/opt/alt/python27/lib64/python2.7/email
mkdir
upload
Name
Size
Mode
Actions
mime/
-
0755
rm
base64mime.py
5794
0644
edit
dl
rm
base64mime.pyc
5388
0644
edit
dl
rm
base64mime.pyo
5388
0644
edit
dl
rm
charset.py
16044
0644
edit
dl
rm
charset.pyc
13762
0644
edit
dl
rm
charset.pyo
13715
0644
edit
dl
rm
encoders.py
2015
0644
edit
dl
rm
encoders.pyc
2323
0644
edit
dl
rm
encoders.pyo
2323
0644
edit
dl
rm
errors.py
1628
0644
edit
dl
rm
errors.pyc
3724
0644
edit
dl
rm
errors.pyo
3724
0644
edit
dl
rm
feedparser.py
20492
0644
edit
dl
rm
feedparser.pyc
11442
0644
edit
dl
rm
feedparser.pyo
11351
0644
edit
dl
rm
generator.py
14203
0644
edit
dl
rm
generator.pyc
10627
0644
edit
dl
rm
generator.pyo
10627
0644
edit
dl
rm
header.py
22243
0644
edit
dl
rm
header.pyc
13870
0644
edit
dl
rm
header.pyo
13800
0644
edit
dl
rm
iterators.py
2202
0644
edit
dl
rm
iterators.pyc
2431
0644
edit
dl
rm
iterators.pyo
2431
0644
edit
dl
rm
message.py
30723
0644
edit
dl
rm
message.pyc
29274
0644
edit
dl
rm
message.pyo
29274
0644
edit
dl
rm
parser.py
3299
0644
edit
dl
rm
parser.pyc
3932
0644
edit
dl
rm
parser.pyo
3932
0644
edit
dl
rm
quoprimime.py
10848
0644
edit
dl
rm
quoprimime.pyc
9019
0644
edit
dl
rm
quoprimime.pyo
9019
0644
edit
dl
rm
utils.py
10026
0644
edit
dl
rm
utils.pyc
9532
0644
edit
dl
rm
utils.pyo
9532
0644
edit
dl
rm
_parseaddr.py
16138
0644
edit
dl
rm
_parseaddr.pyc
14244
0644
edit
dl
rm
_parseaddr.pyo
14244
0644
edit
dl
rm
__init__.py
2856
0644
edit
dl
rm
__init__.pyc
2950
0644
edit
dl
rm
__init__.pyo
2950
0644
edit
dl
rm
Edit:
/opt/alt/python27/lib64/python2.7/email/iterators.py
(2202B)
# Copyright (C) 2001-2006 Python Software Foundation # Author: Barry Warsaw # Contact: email-sig@python.org """Various types of useful iterators and generators.""" __all__ = [ 'body_line_iterator', 'typed_subpart_iterator', 'walk', # Do not include _structure() since it's part of the debugging API. ] import sys from cStringIO import StringIO # This function will become a method of the Message class def walk(self): """Walk over the message tree, yielding each subpart. The walk is performed in depth-first order. This method is a generator. """ yield self if self.is_multipart(): for subpart in self.get_payload(): for subsubpart in subpart.walk(): yield subsubpart # These two functions are imported into the Iterators.py interface module. def body_line_iterator(msg, decode=False): """Iterate over the parts, returning string payloads line-by-line. Optional decode (default False) is passed through to .get_payload(). """ for subpart in msg.walk(): payload = subpart.get_payload(decode=decode) if isinstance(payload, basestring): for line in StringIO(payload): yield line def typed_subpart_iterator(msg, maintype='text', subtype=None): """Iterate over the subparts with a given MIME type. Use `maintype' as the main MIME type to match against; this defaults to "text". Optional `subtype' is the MIME subtype to match against; if omitted, only the main type is matched. """ for subpart in msg.walk(): if subpart.get_content_maintype() == maintype: if subtype is None or subpart.get_content_subtype() == subtype: yield subpart def _structure(msg, fp=None, level=0, include_default=False): """A handy debugging aid""" if fp is None: fp = sys.stdout tab = ' ' * (level * 4) print >> fp, tab + msg.get_content_type(), if include_default: print >> fp, '[%s]' % msg.get_default_type() else: print >> fp if msg.is_multipart(): for subpart in msg.get_payload(): _structure(subpart, fp, level+1, include_default)
Save
cmd:
run