"email.errors": 异常和缺陷类
****************************

**源代码:** Lib/email/errors.py

======================================================================

下列异常类是在 "email.errors" 模块中定义的：

exception email.errors.MessageError

   这是 "email" 包可以引发的所有异常的基类。它源自标准异常 "Exception"
   类，这个类没有定义其他方法。

exception email.errors.MessageParseError

   这是由 "Parser" 类引发的异常的基类。它派生自 "MessageError"。
   "headerregistry" 使用的解析器也在内部使用这个类。

exception email.errors.HeaderParseError

   在解析消息的 **RFC 5322** 标头时，某些错误条件下会触发，此类派生自
   "MessageParseError"。 如果在调用方法时内容类型未知，则
   "set_boundary()" 方法将引发此错误。 "Header" 可能会针对某些 base64
   解码错误引发此错误，以及当尝试创建一个看起来包含嵌入式标头的标头时
   也会引发此错误（也就是说，存在一个没有前导空格并且看起来像标头的延
   续行）。

exception email.errors.BoundaryError

   已弃用和不再使用的。

exception email.errors.MultipartConversionError

   当在派生自 "MIMENonMultipart" 的类（例如 "MIMEImage"）的实例上调用
   "attach()" 方法时将被引发。 "MultipartConversionError" 多重继承自
   "MessageError" 和内置的 "TypeError".

exception email.errors.HeaderWriteError

   当 "generator" 输出标头发生错误时将被引发。

exception email.errors.MessageDefect

   这是表示在解析邮件消息时出现的所有错误的基类。它派生自 "ValueError"
   。

exception email.errors.HeaderDefect

   这是表示在解析邮件标头时出现的所有错误的基类。它派生自
   "MessageDefect"。

以下是 "FeedParser" 在解析消息时可发现的缺陷列表。 请注意这些缺陷会在
问题被发现时加入到消息中，因此举例来说，如果某条嵌套在
*multipart/alternative* 中的消息具有错误的标头，该嵌套消息对象就会有一
条缺陷，但外层消息对象则没有。

所有缺陷类都是 "email.errors.MessageDefect" 的子类。

exception email.errors.NoBoundaryInMultipartDefect

   一条消息宣称为多部分，但却没有 *boundary* 参数。

exception email.errors.StartBoundaryNotFoundDefect

   在 *Content-Type* 标头中宣称的开始边界无法找到。

exception email.errors.CloseBoundaryNotFoundDefect

   找到了开始边界，但找不到对应的结束边界。

   Added in version 3.3.

exception email.errors.FirstHeaderLineIsContinuationDefect

   消息以一个后续行作为其第一个标头行。

exception email.errors.MisplacedEnvelopeHeaderDefect

   在标头块中间发现了一个 "Unix From" 标头。

exception email.errors.MissingHeaderBodySeparatorDefect

   在解析没有前缀空格但又不包含 ':' 的标头期间发现一行内容。解析将假定
   该行代表消息体的第一行以继续执行。

   Added in version 3.3.

exception email.errors.MalformedHeaderDefect

   找到一个缺失了冒号，或者是格式错误的标头。

   自 3.3 版本弃用: 此缺陷在近几个 Python 版本中已不再使用。

exception email.errors.MultipartInvariantViolationDefect

   一条消息宣称为 *multipart*，但找不到任何子部分。请注意当一条消息有
   此缺陷时，其 "is_multipart()" 方法可能返回 "False"，即使其内容类型
   宣称为 *multipart*.

exception email.errors.InvalidBase64PaddingDefect

   当解码一个 base64 编码的字节块时，填充的数据不正确。虽然添加了足够
   的填充数据以执行解码，但作为结果的已解码字节串可能无效。

exception email.errors.InvalidBase64CharactersDefect

   当解码一个 base64 编码的字节分块时，遇到了 base64 字符表以外的字符
   。这些字符会被忽略，但作为结果的已解码字节串可能无效。

exception email.errors.InvalidBase64LengthDefect

   当解码一个 base64 编码的字节分块时，非填充 base64 字符的数量无效（
   比 4 的倍数多 1）。已编码分块会保持原样。

exception email.errors.InvalidDateDefect

   当解码一个无效或不可解析的日期字段时引发。原始值会被保持原样。
