/opt/alt/python27/lib64/python2.7/email
NameSizeModeActions
mime/-0755rm
base64mime.py57940644editdlrm
base64mime.pyc53880644editdlrm
base64mime.pyo53880644editdlrm
charset.py160440644editdlrm
charset.pyc137620644editdlrm
charset.pyo137150644editdlrm
encoders.py20150644editdlrm
encoders.pyc23230644editdlrm
encoders.pyo23230644editdlrm
errors.py16280644editdlrm
errors.pyc37240644editdlrm
errors.pyo37240644editdlrm
feedparser.py215160644editdlrm
feedparser.pyc118840644editdlrm
feedparser.pyo117930644editdlrm
generator.py142030644editdlrm
generator.pyc106270644editdlrm
generator.pyo106270644editdlrm
header.py222430644editdlrm
header.pyc138700644editdlrm
header.pyo138000644editdlrm
iterators.py22020644editdlrm
iterators.pyc24310644editdlrm
iterators.pyo24310644editdlrm
message.py307230644editdlrm
message.pyc292740644editdlrm
message.pyo292740644editdlrm
parser.py32990644editdlrm
parser.pyc39320644editdlrm
parser.pyo39320644editdlrm
quoprimime.py108480644editdlrm
quoprimime.pyc90190644editdlrm
quoprimime.pyo90190644editdlrm
utils.py100260644editdlrm
utils.pyc95320644editdlrm
utils.pyo95320644editdlrm
_parseaddr.py157330644editdlrm
_parseaddr.pyc141760644editdlrm
_parseaddr.pyo141760644editdlrm
__init__.py28560644editdlrm
__init__.pyc29500644editdlrm
__init__.pyo29500644editdlrm
Edit: /opt/alt/python27/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)