python poplib получить вложение

Я пытаюсь получить доступ к почтовому серверу POP3. Я буду опрашивать сообщения и загружать вложения для каждого из них. Я могу успешно войти в систему и получить сообщения, но не могу понять, как на самом деле получить вложение, которое мне нужно будет проанализировать позже.Я думаю, что могу сохранить в tmp dir, пока не обработаю его.

Вот что я получил на данный момент:

pop = poplib.POP3_SSL(server)
pop.user(usr)
pop.pass_(pwd)

f = open(file_dir, 'w')
num_msgs = len(pop.list()[1])
for msg_list in range(num_msgs):
    for msg in pop.retr(msg_list+1)[1]:
        mail = email.message_from_string(msg)
        for part in mail.walk():
            f.write(part.get_payload(decode=True))
f.close()

Это код, который я собрал по частям из примеров, которые я нашел в Интернете, но не получил убедительного примера фактического получения вложения. Файл, в который я пишу, пуст. Что мне здесь не хватает?

6
задан faintsignal 19 September 2019 в 07:40
поделиться