email.errors
: Exception and Defect classes¶
ソースコード: Lib/email/errors.py
email.errors
モジュールでは、以下の例外クラスが定義されています:
- exception email.errors.MessageError¶
これは
email
パッケージが送出しうるすべての例外の基底クラスです。これは標準のException
クラスから派生しており、追加のメソッドは定義されていません。
- exception email.errors.MessageParseError¶
This is the base class for exceptions raised by the
Parser
class. It is derived fromMessageError
. This class is also used internally by the parser used byheaderregistry
.
- exception email.errors.HeaderParseError¶
Raised under some error conditions when parsing the RFC 5322 headers of a message, this class is derived from
MessageParseError
. Theset_boundary()
method will raise this error if the content type is unknown when the method is called.Header
may raise this error for certain base64 decoding errors, and when an attempt is made to create a header that appears to contain an embedded header (that is, there is what is supposed to be a continuation line that has no leading whitespace and looks like a header).
- exception email.errors.BoundaryError¶
Deprecated and no longer used.
- exception email.errors.MultipartConversionError¶
Raised when a payload is added to a
Message
object usingadd_payload()
, but the payload is already a scalar and the message's Content-Type main type is not either multipart or missing.MultipartConversionError
multiply inherits fromMessageError
and the built-inTypeError
.Since
Message.add_payload()
is deprecated, this exception is rarely raised in practice. However the exception may also be raised if theattach()
method is called on an instance of a class derived fromMIMENonMultipart
(e.g.MIMEImage
).
- exception email.errors.HeaderWriteError¶
Raised when an error occurs when the
generator
outputs headers.
- exception email.errors.MessageDefect¶
This is the base class for all defects found when parsing email messages. It is derived from
ValueError
.
- exception email.errors.HeaderDefect¶
This is the base class for all defects found when parsing email headers. It is derived from
MessageDefect
.
以下は FeedParser
がメッセージの解析中に検出する障害 (defect) の一覧です。これらの障害は、問題が見つかったメッセージに追加されるため、たとえば multipart/alternative 内にあるネストしたメッセージが異常なヘッダをもっていた場合には、そのネストしたメッセージが障害を持っているが、その親メッセージには障害はないとみなされることに注意してください。
すべての障害クラスは email.errors.MessageDefect
のサブクラスです。
NoBoundaryInMultipartDefect
-- A message claimed to be a multipart, but had no boundary parameter.StartBoundaryNotFoundDefect
-- The start boundary claimed in the Content-Type header was never found.CloseBoundaryNotFoundDefect
-- A start boundary was found, but no corresponding close boundary was ever found.バージョン 3.3 で追加.
FirstHeaderLineIsContinuationDefect
-- The message had a continuation line as its first header line.MisplacedEnvelopeHeaderDefect
- A "Unix From" header was found in the middle of a header block.MissingHeaderBodySeparatorDefect
- A line was found while parsing headers that had no leading white space but contained no ':'. Parsing continues assuming that the line represents the first line of the body.バージョン 3.3 で追加.
MalformedHeaderDefect
-- A header was found that was missing a colon, or was otherwise malformed.バージョン 3.3 で非推奨: この欠陥が使われていないPythonバージョンがいくつかあります。
MultipartInvariantViolationDefect
-- A message claimed to be a multipart, but no subparts were found. Note that when a message has this defect, itsis_multipart()
method may returnFalse
even though its content type claims to be multipart.InvalidBase64PaddingDefect
-- When decoding a block of base64 encoded bytes, the padding was not correct. Enough padding is added to perform the decode, but the resulting decoded bytes may be invalid.InvalidBase64CharactersDefect
-- When decoding a block of base64 encoded bytes, characters outside the base64 alphabet were encountered. The characters are ignored, but the resulting decoded bytes may be invalid.InvalidBase64LengthDefect
-- When decoding a block of base64 encoded bytes, the number of non-padding base64 characters was invalid (1 more than a multiple of 4). The encoded block was kept as-is.InvalidDateDefect
-- When decoding an invalid or unparsable date field. The original value is kept as-is.