email.errors: کلاسهای استثنا و نقص (Defect)¶
کد منبع: 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¶
در صورتی پرتاب میشود که متد attach() روی نمونهای از کلاسی مشتقشده از MIMENonMultipart فراخوانی شود (برای مثال MIMEImage). 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¶
پیامی ادعا کرده بود که چندبخشی (multipart) است، اما پارامتر boundary نداشت.
-
exception email.errors.StartBoundaryNotFoundDefect¶
مرز آغازین اعلامشده در سرآیند Content-Type هرگز پیدا نشد.
-
exception email.errors.CloseBoundaryNotFoundDefect¶
یک مرز آغازین یافت شد، اما هرگز مرز پایانی متناظری یافت نشد.
-
exception email.errors.FirstHeaderLineIsContinuationDefect¶
پیام دارای یک خط ادامه بهعنوان نخستین خط سرآیند خود بود.
-
exception email.errors.MisplacedEnvelopeHeaderDefect¶
یک سرآیند «Unix From» در میانهی یک بلوک سرآیند یافت شد.
-
exception email.errors.MissingHeaderBodySeparatorDefect¶
در هنگام تجزیه سرآیندها، سطری یافت شد که فضای سفید پیشرو نداشت اما شامل «:» نبود. تجزیه با این فرض ادامه مییابد که این خط، نشاندهنده نخستین خط بدنه است.
-
exception email.errors.MalformedHeaderDefect¶
سرآیندی یافت شد که فاقد علامت دونقطه بود یا به شکل دیگری نامعتبر بود.
منسوخ شده از نسخهی 3.3: این نقص برای چندین نسخه پایتون استفاده نشده است.
-
exception email.errors.MultipartInvariantViolationDefect¶
پیامی ادعا میکرد که multipart است، اما هیچ زیربخشی یافت نشد. توجه داشته باشید که هنگامی که پیامی این نقص را دارد، ممکن است متد is_multipart() آن False را برگرداند، حتی اگر نوع محتوای آن ادعا کند که multipart است.
-
exception email.errors.InvalidBase64PaddingDefect¶
هنگام کدگشایی بلوکی از بایتهای کدگذاریشده با base64، پرکننده (padding) صحیح نبود. پرکنندهی کافی برای انجام کدگشایی اضافه میشود، اما بایتهای حاصل از کدگشایی ممکن است نامعتبر باشند.
-
exception email.errors.InvalidBase64CharactersDefect¶
هنگام کدگشایی یک بلوک از بایتهای کدگذاریشدهی base64، نویسههایی خارج از الفبای base64 مشاهده شدند. این نویسهها نادیده گرفته میشوند، اما بایتهای کدگشاییشدهی حاصل ممکن است نامعتبر باشند.
-
exception email.errors.InvalidBase64LengthDefect¶
هنگام کدگشایی یک بلوک از بایتهای کدگذاریشده به base64، تعداد نویسههای base64 غیر از پرکننده (padding) نامعتبر بود (۱ بیشتر از مضربی از ۴). بلوک کدگذاریشده بدون تغییر نگه داشته شد.
-
exception email.errors.InvalidDateDefect¶
هنگام کدگشایی یک فیلد تاریخ نامعتبر یا غیرقابلتجزیه. مقدار اصلی همانطور که هست نگه داشته میشود.
©
حق نشر 2001 Python Software Foundation.
این صفحه تحت مجوز بنیاد نرمافزار پایتون نسخه ۲ منتشر شده است.
مثالها، دستورالعملها، و سایر کدهای موجود در مستندات همچنین تحت مجوز بدون بند BSD منتشر شدهاند.
برای اطلاعات بیشتر به
تاریخچه و مجوز مراجعه کنید.
بنیاد نرمافزار پایتون یک شرکت غیرانتفاعی است.
لطفاً کمک مالی کنید.
آخرین بهروزرسانی در نوامبر 12, 2026 (06:19 UTC).
آیا
اشکالی یافتید؟
ساخته شده با
Sphinx 9.1.0.