The mimify module defines two functions to convert mail messages to
and from MIME format. The mail message can be either a simple message
or a so-called multipart message. Each part is treated separately.
Mimifying (a part of) a message entails encoding the message as
quoted-printable if it contains any characters that cannot be
represented using 7-bit ASCII. Unmimifying (a part of) a message
entails undoing the quoted-printable encoding. Mimify and unmimify
are especially useful when a message has to be edited before being
sent. Typical use would be:
The modules defines the following user-callable functions and
- mimify(infile, outfile)
Copy the message in infile to outfile, converting parts to
quoted-printable and adding MIME mail headers when necessary.
infile and outfile can be file objects (actually, any
object that has a readline() method (for infile) or a
write() method (for outfile)) or strings naming the files.
If infile and outfile are both strings, they may have the
- unmimify(infile, outfile[, decode_base64])
Copy the message in infile to outfile, decoding all
quoted-printable parts. infile and outfile can be file
objects (actually, any object that has a readline() method (for
infile) or a write() method (for outfile)) or strings
naming the files. If infile and outfile are both strings,
they may have the same value.
If the decode_base64 argument is provided and tests true, any
parts that are coded in the base64 encoding are decoded as well.
Return a decoded version of the encoded header line in line.
Return a MIME-encoded version of the header line in line.
By default, a part will be encoded as quoted-printable when it
contains any non-ASCII characters (i.e., characters with the 8th bit
set), or if there are any lines longer than MAXLEN characters
(default value 200).
When not specified in the mail headers, a character set must be filled
in. The string used is stored in CHARSET, and the default
value is ISO-8859-1 (also known as Latin1 (latin-one)).
This module can also be used from the command line. Usage is as
to encode (mimify) and decode (unmimify) respectively. infile
defaults to standard input, outfile defaults to standard output.
The same file can be specified for input and output.
mimify.py -e [-l length] [infile [outfile]]
mimify.py -d [-b] [infile [outfile]]
If the -l option is given when encoding, if there are any lines
longer than the specified length, the containing part will be
If the -b option is given when decoding, any base64 parts will
be decoded as well.
See About this document... for information on suggesting changes.
- Module quopri:
- Encode and decode MIME quoted-printable files.