as_bytes(unixfrom=False, policy=None)
Return the entire message flattened as a bytes object. When optional unixfrom is true, the envelope header is included in the returned string. unixfrom defaults to False
. The policy argument may be used to override the default policy obtained from the message instance. This can be used to control some of the formatting produced by the method, since the specified policy will be passed to the BytesGenerator
.
Flattening the message may trigger changes to the Message
if defaults need to be filled in to complete the transformation to a string (for example, MIME boundaries may be generated or modified).
Note that this method is provided as a convenience and may not always format the message the way you want. For example, by default it does not do the mangling of lines that begin with From
that is required by the unix mbox format. For more flexibility, instantiate a BytesGenerator
instance and use its flatten()
method directly. For example:
from io import BytesIO from email.generator import BytesGenerator fp = BytesIO() g = BytesGenerator(fp, mangle_from_=True, maxheaderlen=60) g.flatten(msg) text = fp.getvalue()
New in version 3.4.
Please login to continue.