email.errors :异常和缺陷类别¶
源代码: Lib/email/errors.py
以下异常类是在 email.errors 模块:
- 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¶
将有效负载添加到
Message对象使用add_payload(),但有效负载已经是一个标量,消息的 Content-Type 主类型也不是 multipart 或者失踪了。MultipartConversionError乘法继承自MessageError以及内置的TypeError.自从
Message.add_payload()已弃用,实际中很少引发此异常。但是,如果attach()方法是对派生自MIMENonMultipart(例如)MIMEImage)
这是缺陷清单 FeedParser 分析消息时找不到。请注意,缺陷会添加到发现问题的消息中,例如,如果消息嵌套在 multipart/alternative 如果头格式不正确,则嵌套的消息对象将有缺陷,但包含消息的则不会。
所有缺陷类都是从 email.errors.MessageDefect .
NoBoundaryInMultipartDefect--一条消息声称是多部分消息,但没有 boundary 参数。StartBoundaryNotFoundDefect--中声明的起始边界 Content-Type 找不到标题。CloseBoundaryNotFoundDefect--找到起始边界,但从未找到对应的闭合边界。3.3 新版功能.
FirstHeaderLineIsContinuationDefect--消息的第一个标题行是续行。MisplacedEnvelopeHeaderDefect-在头块的中间找到了“unix-from”头。MissingHeaderBodySeparatorDefect-分析没有前导空格但不包含“:”的头时发现一行。解析继续假定该行代表主体的第一行。3.3 新版功能.
MalformedHeaderDefect--发现缺少冒号或格式不正确的头。3.3 版后已移除: 这个缺陷还没有在几个Python版本中使用。
MultipartInvariantViolationDefect--一条声称是 multipart ,但未找到子部分。请注意,当消息有此缺陷时,is_multipart()方法可能返回False即使它的内容类型声称是 multipart .InvalidBase64PaddingDefect--解码base64编码字节块时,填充不正确。添加了足够的填充以执行解码,但结果解码的字节可能无效。InvalidBase64CharactersDefect--解码base64编码字节块时,遇到base64字母表之外的字符。字符将被忽略,但结果解码的字节可能无效。InvalidBase64LengthDefect--解码base64编码字节块时,非填充base64字符数无效(1大于4的倍数)。编码块保持原样。InvalidDateDefect--解码无效或无法解析的日期字段时。原始值保持不变。