/usr/lib64/python2.7/email
NameSizeModeActions
mime/-0755rm
base64mime.py57940644editdlrm
base64mime.pyc53230644editdlrm
base64mime.pyo53230644editdlrm
charset.py160440644editdlrm
charset.pyc135410644editdlrm
charset.pyo134940644editdlrm
encoders.py20150644editdlrm
encoders.pyc22320644editdlrm
encoders.pyo22320644editdlrm
errors.py16280644editdlrm
errors.pyc35290644editdlrm
errors.pyo35290644editdlrm
feedparser.py204920644editdlrm
feedparser.pyc111430644editdlrm
feedparser.pyo110520644editdlrm
generator.py142030644editdlrm
generator.pyc103800644editdlrm
generator.pyo103800644editdlrm
header.py222430644editdlrm
header.pyc136620644editdlrm
header.pyo135920644editdlrm
iterators.py22020644editdlrm
iterators.pyc23660644editdlrm
iterators.pyo23660644editdlrm
message.py307230644editdlrm
message.pyc286760644editdlrm
message.pyo286760644editdlrm
parser.py32990644editdlrm
parser.pyc38280644editdlrm
parser.pyo38280644editdlrm
quoprimime.py108480644editdlrm
quoprimime.pyc88500644editdlrm
quoprimime.pyo88500644editdlrm
utils.py100260644editdlrm
utils.pyc93240644editdlrm
utils.pyo93240644editdlrm
_parseaddr.py161380644editdlrm
_parseaddr.pyc138930644editdlrm
_parseaddr.pyo138930644editdlrm
__init__.py28560644editdlrm
__init__.pyc28720644editdlrm
__init__.pyo28720644editdlrm
Edit: /usr/lib64/python2.7/email/parser.py (3299B)
# Copyright (C) 2001-2006 Python Software Foundation # Author: Barry Warsaw, Thomas Wouters, Anthony Baxter # Contact: email-sig@python.org """A parser of RFC 2822 and MIME email messages.""" __all__ = ['Parser', 'HeaderParser'] import warnings from cStringIO import StringIO from email.feedparser import FeedParser from email.message import Message class Parser: def __init__(self, *args, **kws): """Parser of RFC 2822 and MIME email messages. Creates an in-memory object tree representing the email message, which can then be manipulated and turned over to a Generator to return the textual representation of the message. The string must be formatted as a block of RFC 2822 headers and header continuation lines, optionally preceded by a `Unix-from' header. The header block is terminated either by the end of the string or by a blank line. _class is the class to instantiate for new message objects when they must be created. This class must have a constructor that can take zero arguments. Default is Message.Message. """ if len(args) >= 1: if '_class' in kws: raise TypeError("Multiple values for keyword arg '_class'") kws['_class'] = args[0] if len(args) == 2: if 'strict' in kws: raise TypeError("Multiple values for keyword arg 'strict'") kws['strict'] = args[1] if len(args) > 2: raise TypeError('Too many arguments') if '_class' in kws: self._class = kws['_class'] del kws['_class'] else: self._class = Message if 'strict' in kws: warnings.warn("'strict' argument is deprecated (and ignored)", DeprecationWarning, 2) del kws['strict'] if kws: raise TypeError('Unexpected keyword arguments') def parse(self, fp, headersonly=False): """Create a message structure from the data in a file. Reads all the data from the file and returns the root of the message structure. Optional headersonly is a flag specifying whether to stop parsing after reading the headers or not. The default is False, meaning it parses the entire contents of the file. """ feedparser = FeedParser(self._class) if headersonly: feedparser._set_headersonly() while True: data = fp.read(8192) if not data: break feedparser.feed(data) return feedparser.close() def parsestr(self, text, headersonly=False): """Create a message structure from a string. Returns the root of the message structure. Optional headersonly is a flag specifying whether to stop parsing after reading the headers or not. The default is False, meaning it parses the entire contents of the file. """ return self.parse(StringIO(text), headersonly=headersonly) class HeaderParser(Parser): def parse(self, fp, headersonly=True): return Parser.parse(self, fp, True) def parsestr(self, text, headersonly=True): return Parser.parsestr(self, text, True)