email.errors
: Klasser för undantag och defekter¶
Källkod: Lib/email/errors.py
Följande undantagsklasser definieras i modulen email.errors
:
- exception email.errors.MessageError¶
Detta är basklassen för alla undantag som paketet
email
kan ge upphov till. Den härstammar från standardklassenException
och definierar inga ytterligare metoder.
- exception email.errors.MessageParseError¶
Detta är basklassen för undantag som skapas av klassen
Parser
. Den är härledd frånMessageError
. Denna klass används också internt av den parser som används avheaderregistry
.
- exception email.errors.HeaderParseError¶
Uppstår under vissa felförhållanden vid analys av RFC 5322-rubrikerna i ett meddelande, denna klass härrör från
MessageParseError
. Metodenset_boundary()
kommer att ge upphov till detta fel om innehållstypen är okänd när metoden anropas.Header
kan ge upphov till detta fel för vissa base64-avkodningsfel och när ett försök görs att skapa en rubrik som verkar innehålla en inbäddad rubrik (det vill säga, det finns vad som ska vara en fortsättningsrad som inte har några ledande blanksteg och ser ut som en rubrik).
- exception email.errors.BoundaryError¶
Utfasad och används inte längre.
- exception email.errors.MultipartConversionError¶
Uppstår om metoden
attach()
anropas på en instans av en klass som härrör frånMIMENonMultipart
(t.ex.MIMEImage
).MultipartConversionError
ärver multipelt frånMessageError
och den inbyggdaTypeError
.
- exception email.errors.HeaderWriteError¶
Utlöses när ett fel uppstår när
generator
matar ut rubriker.
- exception email.errors.MessageDefect¶
Detta är basklassen för alla defekter som upptäcks när e-postmeddelanden analyseras. Den är härledd från
ValueError
.
- exception email.errors.HeaderDefect¶
Detta är basklassen för alla defekter som upptäcks vid analys av e-postrubriker. Den är härledd från
MessageDefect
.
Här är listan över de defekter som FeedParser
kan hitta när den analyserar meddelanden. Observera att defekterna läggs till i det meddelande där problemet hittades, så till exempel om ett meddelande som är kapslat inuti en multipart/alternative hade ett felaktigt huvud, skulle det kapslade meddelandeobjektet ha en defekt, men de innehållande meddelandena skulle inte ha det.
Alla defektklasser är underklassade från email.errors.MessageDefect
.
- exception email.errors.NoBoundaryInMultipartDefect¶
Ett meddelande påstod sig vara en multipart, men hade ingen parameter boundary.
- exception email.errors.StartBoundaryNotFoundDefect¶
Startgränsen som angavs i Content-Type -rubriken hittades aldrig.
- exception email.errors.CloseBoundaryNotFoundDefect¶
En startgräns hittades, men ingen motsvarande slutgräns hittades någonsin.
Tillagd i version 3.3.
- exception email.errors.FirstHeaderLineIsContinuationDefect¶
Meddelandet hade en fortsättningsrad som första rubrikrad.
- exception email.errors.MisplacedEnvelopeHeaderDefect¶
Ett ”Unix From”-huvud hittades i mitten av ett huvudblock.
- exception email.errors.MissingHeaderBodySeparatorDefect¶
Vid parsning av rubriker hittades en rad som inte hade något inledande vitt utrymme men som inte innehöll något ’:’. Parsningen fortsätter med antagandet att raden representerar den första raden i brödtexten.
Tillagd i version 3.3.
- exception email.errors.MalformedHeaderDefect¶
En header saknade ett kolon eller var på annat sätt felformad.
Föråldrad sedan version 3.3: Denna defekt har inte använts på flera Python-versioner.
- exception email.errors.MultipartInvariantViolationDefect¶
Ett meddelande påstod sig vara en multipart, men inga underdelar hittades. Observera att när ett meddelande har denna defekt kan dess metod
is_multipart()
returneraFalse
även om dess innehållstyp påstår sig vara multipart.
- exception email.errors.InvalidBase64PaddingDefect¶
Vid avkodning av ett block med base64-kodade byte var utfyllnaden inte korrekt. Tillräcklig utfyllnad läggs till för att utföra avkodningen, men de avkodade byte som blir resultatet kan vara ogiltiga.
- exception email.errors.InvalidBase64CharactersDefect¶
Vid avkodning av ett block med base64-kodade bytes påträffades tecken utanför base64-alfabetet. Tecknen ignoreras, men de avkodade byte som blir resultatet kan vara ogiltiga.
- exception email.errors.InvalidBase64LengthDefect¶
Vid avkodning av ett block med base64-kodade bytes var antalet icke-padding base64-tecken ogiltigt (1 mer än en multipel av 4). Det kodade blocket behölls i befintligt skick.
- exception email.errors.InvalidDateDefect¶
Vid avkodning av ett ogiltigt eller icke analyserbart datumfält. Det ursprungliga värdet behålls som det är.