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 email có thể đưa ra. Nó có nguồn gốc từ lớp Exception tiê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 được headerregistry sử 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ức set_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. Header có 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). MultipartConversionError kế thừa từ MessageErrorTypeError tích hợp.

exception email.errors.HeaderWriteError

Xảy ra khi xảy ra lỗi khi generator xuất ra các tiêu đề.

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ề False mặ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.