Я использую imaplib для работы с imap в python, однако, похоже, у него нет средств для анализа деталей ответов IMAP. Например, запрос типа:
msgdata = connection.fetch(num, "(BODY.PEEK[HEADER.FIELDS (FROM TO CC DATE SUBJECT MESSAGE-ID)] UID)")
, где num
- номер сообщения, для одного почтового сервера может выдаться (например):
('OK', [('1234 (BODY[HEADER.FIELDS (FROM TO CC DATE SUBJECT MESSAGE-ID)] {123}', 'From: ...etc headers'), ' UID 3456)'])
и для другого:
('OK', [('1234 (UID 3456 BODY[HEADER.FIELDS (FROM TO CC DATE SUBJECT MESSAGE-ID)] {123}', 'From: ...etc headers'), ')'])
Как видите, детали сообщения разные, а UID там даже в другом элементе. Таким образом, вопрос заключается в том, существует ли какая-либо библиотека, которая позволяла бы автоматически сортировать ее и абстрагировать детали того, что делает определенный почтовый сервер?