lib64
/
python2.7
/
email
/
Go to Home Directory
+
Upload
Create File
root@0UT1S:~$
Execute
By Order of Mr.0UT1S
[DIR] ..
N/A
[DIR] mime
N/A
__init__.py
2.79 KB
Rename
Delete
__init__.pyc
2.80 KB
Rename
Delete
__init__.pyo
2.80 KB
Rename
Delete
_parseaddr.py
15.76 KB
Rename
Delete
_parseaddr.pyc
13.57 KB
Rename
Delete
_parseaddr.pyo
13.57 KB
Rename
Delete
base64mime.py
5.66 KB
Rename
Delete
base64mime.pyc
5.20 KB
Rename
Delete
base64mime.pyo
5.20 KB
Rename
Delete
charset.py
15.67 KB
Rename
Delete
charset.pyc
13.22 KB
Rename
Delete
charset.pyo
13.18 KB
Rename
Delete
encoders.py
1.97 KB
Rename
Delete
encoders.pyc
2.18 KB
Rename
Delete
encoders.pyo
2.18 KB
Rename
Delete
errors.py
1.59 KB
Rename
Delete
errors.pyc
3.45 KB
Rename
Delete
errors.pyo
3.45 KB
Rename
Delete
feedparser.py
20.01 KB
Rename
Delete
feedparser.pyc
10.88 KB
Rename
Delete
feedparser.pyo
10.79 KB
Rename
Delete
generator.py
13.87 KB
Rename
Delete
generator.pyc
10.14 KB
Rename
Delete
generator.pyo
10.14 KB
Rename
Delete
header.py
21.72 KB
Rename
Delete
header.pyc
13.34 KB
Rename
Delete
header.pyo
13.27 KB
Rename
Delete
iterators.py
2.15 KB
Rename
Delete
iterators.pyc
2.31 KB
Rename
Delete
iterators.pyo
2.31 KB
Rename
Delete
message.py
30.00 KB
Rename
Delete
message.pyc
28.00 KB
Rename
Delete
message.pyo
28.00 KB
Rename
Delete
parser.py
3.22 KB
Rename
Delete
parser.pyc
3.74 KB
Rename
Delete
parser.pyo
3.74 KB
Rename
Delete
quoprimime.py
10.59 KB
Rename
Delete
quoprimime.pyc
8.64 KB
Rename
Delete
quoprimime.pyo
8.64 KB
Rename
Delete
utils.py
9.79 KB
Rename
Delete
utils.pyc
9.11 KB
Rename
Delete
utils.pyo
9.11 KB
Rename
Delete
# 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