email.errors: Exception and Defect classes

Code source : Lib/email/errors.py


Les classes d'exception suivantes sont définies dans le module email.errors :

exception email.errors.MessageError

Exception de base, dont héritent toutes les exceptions du paquet email. Cette classe hérite de la classe native Exception et ne définit aucune méthode additionnelle.

exception email.errors.MessageParseError

Exception de base pour les exceptions levées par la classe Parser. Elle hérite de MessageError. Cette classe est aussi utilisée en interne par l'analyseur de headerregistry.

exception email.errors.HeaderParseError

Cette exception, dérivée de MessageParseError, est levée sous différentes conditions lors de l'analyse des en-têtes RFC 5322 du message. Lorsque la méthode set_boundary() est invoquée, elle lève cette erreur si le type du contenu est inconnu. La classe Header lève cette exception pour certains types d'erreurs provenant du décodage base64. Elle la lève aussi quand un en-tête est créé et qu'il semble contenir un en-tête imbriqué, c'est-à-dire que la ligne qui suit ressemble à un en-tête et ne commence pas par des caractères d'espacement.

exception email.errors.BoundaryError

Obsolète, n'est plus utilisé.

exception email.errors.MultipartConversionError

Raised if the attach() method is called on an instance of a class derived from MIMENonMultipart (e.g. MIMEImage). MultipartConversionError multiply inherits from MessageError and the built-in TypeError.

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.

Voici la liste des anomalies que peut identifier FeedParser pendant l'analyse des messages. Notez que les anomalies sont signalées à l'endroit où elles sont détectées : par exemple, dans le cas d'une malformation de l'en-tête d'un message imbriqué dans un message de type multipart/alternative, l'anomalie est signalée sur le message imbriqué seulement.

Toutes les anomalies sont des sous-classes de email.errors.MessageDefect.

exception email.errors.NoBoundaryInMultipartDefect

A message claimed to be a multipart, but had no boundary parameter.

exception email.errors.StartBoundaryNotFoundDefect

The start boundary claimed in the Content-Type header was never found.

exception email.errors.CloseBoundaryNotFoundDefect

A start boundary was found, but no corresponding close boundary was ever found.

Ajouté dans la version 3.3.

exception email.errors.FirstHeaderLineIsContinuationDefect

The message had a continuation line as its first header line.

exception email.errors.MisplacedEnvelopeHeaderDefect

A "Unix From" header was found in the middle of a header block.

exception email.errors.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.

Ajouté dans la version 3.3.

exception email.errors.MalformedHeaderDefect

A header was found that was missing a colon, or was otherwise malformed.

Obsolète depuis la version 3.3: Cette anomalie est obsolète depuis plusieurs versions de Python.

exception email.errors.MultipartInvariantViolationDefect

A message claimed to be a multipart, but no subparts were found. Note that when a message has this defect, its is_multipart() method may return False even though its content type claims to be multipart.

exception email.errors.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.

exception email.errors.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.

exception email.errors.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.

exception email.errors.InvalidDateDefect

When decoding an invalid or unparsable date field. The original value is kept as-is.