__init__.py 1.72 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
# Copyright (C) 2001-2007 Python Software Foundation
# Author: Barry Warsaw
# Contact: email-sig@python.org

"""A package for parsing, handling, and generating email messages."""

__all__ = [
    'base64mime',
    'charset',
    'encoders',
    'errors',
12
    'feedparser',
13 14 15 16 17
    'generator',
    'header',
    'iterators',
    'message',
    'message_from_file',
18
    'message_from_binary_file',
19
    'message_from_string',
20
    'message_from_bytes',
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
    'mime',
    'parser',
    'quoprimime',
    'utils',
    ]



# Some convenience routines.  Don't import Parser and Message as side-effects
# of importing email since those cascadingly import most of the rest of the
# email package.
def message_from_string(s, *args, **kws):
    """Parse a string into a Message object model.

    Optional _class and strict are passed to the Parser constructor.
    """
    from email.parser import Parser
    return Parser(*args, **kws).parsestr(s)

40 41 42 43 44 45 46
def message_from_bytes(s, *args, **kws):
    """Parse a bytes string into a Message object model.

    Optional _class and strict are passed to the Parser constructor.
    """
    from email.parser import BytesParser
    return BytesParser(*args, **kws).parsebytes(s)
47 48 49 50 51 52 53 54

def message_from_file(fp, *args, **kws):
    """Read a file and parse its contents into a Message object model.

    Optional _class and strict are passed to the Parser constructor.
    """
    from email.parser import Parser
    return Parser(*args, **kws).parse(fp)
55 56 57 58 59 60

def message_from_binary_file(fp, *args, **kws):
    """Read a binary file and parse its contents into a Message object model.

    Optional _class and strict are passed to the Parser constructor.
    """
61
    from email.parser import BytesParser
62
    return BytesParser(*args, **kws).parse(fp)