email.errors: Các lớp ngoại lệ và khiếm khuyết¶
Source code: Lib/email/errors.py
Các lớp ngoại lệ sau được xác định trong mô-đun email.errors:
- exception email.errors.MessageError¶
Đây là lớp cơ sở cho tất cả các ngoại lệ mà gói
emailcó thể đưa ra. Nó có nguồn gốc từ lớpExceptiontiêu chuẩn và không định nghĩa các phương thức bổ sung.
- exception email.errors.MessageParseError¶
Đây là lớp cơ sở dành cho các trường hợp ngoại lệ do lớp
Parserđưa ra. Nó có nguồn gốc từMessageError. Lớp này cũng được sử dụng nội bộ bởi trình phân tích cú pháp đượcheaderregistrysử dụng.
- exception email.errors.HeaderParseError¶
Xuất hiện trong một số điều kiện lỗi khi phân tích cú pháp tiêu đề RFC 5322 của tin nhắn, lớp này có nguồn gốc từ
MessageParseError. Phương thứcset_boundary()sẽ gây ra lỗi này nếu không xác định được loại nội dung khi phương thức được gọi.Headercó thể gây ra lỗi này đối với một số lỗi giải mã base64 nhất định và khi cố gắng tạo tiêu đề có vẻ như chứa tiêu đề được nhúng (nghĩa là có một dòng được cho là một dòng tiếp tục không có khoảng trắng ở đầu và trông giống như một tiêu đề).
- exception email.errors.BoundaryError¶
Không được dùng nữa và không còn được sử dụng.
- exception email.errors.MultipartConversionError¶
Xảy ra nếu phương thức
attach()được gọi trên một phiên bản của lớp dẫn xuất từMIMENonMultipart(ví dụ:MIMEImage).MultipartConversionErrorkế thừa từMessageErrorvàTypeErrortích hợp.
- exception email.errors.MessageDefect¶
Đây là lớp cơ sở cho tất cả các lỗi được tìm thấy khi phân tích cú pháp email. Nó có nguồn gốc từ
ValueError.
- exception email.errors.HeaderDefect¶
Đây là lớp cơ sở cho tất cả các lỗi được tìm thấy khi phân tích tiêu đề email. Nó có nguồn gốc từ
MessageDefect.
Đây là danh sách các lỗi mà FeedParser có thể tìm thấy khi phân tích tin nhắn. Lưu ý rằng các lỗi sẽ được thêm vào thông báo nơi phát hiện sự cố, vì vậy, ví dụ: nếu một thông báo được lồng bên trong multipart/alternative có tiêu đề không đúng định dạng thì đối tượng thông báo lồng nhau đó sẽ có lỗi, nhưng các thông báo chứa thì không.
Tất cả các lớp lỗi được phân lớp từ email.errors.MessageDefect.
- exception email.errors.NoBoundaryInMultipartDefect¶
Một tin nhắn được cho là có nhiều phần nhưng không có tham số boundary.
- exception email.errors.StartBoundaryNotFoundDefect¶
Không bao giờ tìm thấy ranh giới bắt đầu được xác nhận trong tiêu đề Content-Type.
- exception email.errors.CloseBoundaryNotFoundDefect¶
Một ranh giới bắt đầu đã được tìm thấy, nhưng không tìm thấy ranh giới gần tương ứng nào.
Added in version 3.3.
- exception email.errors.FirstHeaderLineIsContinuationDefect¶
Tin nhắn có dòng tiếp theo là dòng tiêu đề đầu tiên.
- exception email.errors.MisplacedEnvelopeHeaderDefect¶
Tiêu đề "Unix From" được tìm thấy ở giữa khối tiêu đề.
- exception email.errors.MissingHeaderBodySeparatorDefect¶
Đã tìm thấy một dòng trong khi phân tích cú pháp các tiêu đề không có khoảng trắng ở đầu nhưng không chứa ':'. Quá trình phân tích cú pháp tiếp tục giả định rằng dòng này đại diện cho dòng đầu tiên của nội dung.
Added in version 3.3.
- exception email.errors.MalformedHeaderDefect¶
Một tiêu đề được phát hiện thiếu dấu hai chấm hoặc có định dạng không đúng.
Sắp loại bỏ từ phiên bản 3.3: Lỗi này chưa được sử dụng cho một số phiên bản Python.
- exception email.errors.MultipartInvariantViolationDefect¶
Một tin nhắn được cho là multipart nhưng không tìm thấy phần phụ nào. Lưu ý rằng khi thư có lỗi này, phương thức
is_multipart()của nó có thể trả vềFalsemặc dù loại nội dung của nó tuyên bố là multipart.
- exception email.errors.InvalidBase64PaddingDefect¶
Khi giải mã một khối byte được mã hóa base64, phần đệm không chính xác. Khoảng đệm được thêm vào đủ để thực hiện giải mã, nhưng số byte được giải mã thu được có thể không hợp lệ.
- exception email.errors.InvalidBase64CharactersDefect¶
Khi giải mã một khối byte được mã hóa base64, đã gặp phải các ký tự nằm ngoài bảng chữ cái base64. Các ký tự bị bỏ qua nhưng byte được giải mã thu được có thể không hợp lệ.
- exception email.errors.InvalidBase64LengthDefect¶
Khi giải mã một khối byte được mã hóa base64, số ký tự base64 không đệm là không hợp lệ (nhiều hơn 1 bội số của 4). Khối được mã hóa được giữ nguyên.
- exception email.errors.InvalidDateDefect¶
Khi giải mã trường ngày không hợp lệ hoặc không thể phân tích cú pháp. Giá trị ban đầu được giữ nguyên.