Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 17, 2015 15:01:12

avalon
Зарегистрирован: 2015-12-17
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Сохранить многофайловые вложения в письме.

Здравствуйте. Нигде не могу найти снипет для python 3 как сохранить вложения письма. Сервер POP3. Буду благодарен если укажете где скать. Или дадите ссылку где посмотреть. Спасибо.

Офлайн

#2 Дек. 18, 2015 08:26:44

avalon
Зарегистрирован: 2015-12-17
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Сохранить многофайловые вложения в письме.

Нашел снипет.

#!/usr/bin/env python3
import poplib, email
server = 'my.server.domain'
port = "110"
login = 'mylogin'
password = 'mypassword'	
pop_conn = poplib.POP3(server, port)
pop_conn.user(login)
pop_conn.pass_(password)
messages = [pop_conn.retr(i) for i in range(1, len(pop_conn.list()[1]) + 1)]
messages = ['\n'.join(str(mssg[1])) for mssg in messages]
messages = [email.parser.Parser().parsestr(mssg) for mssg in messages]
pop_conn.quit()
Выдает ошибку:
AttributeError: ‘module’ object has no attribute ‘parser’
Подозреваю что это код для python 2.
Прошу помощи сообщества. Спасибо.

Офлайн

#3 Дек. 18, 2015 18:46:45

old_monty
Зарегистрирован: 2015-09-27
Сообщения: 238
Репутация: +  20  -
Профиль   Отправить e-mail  

Сохранить многофайловые вложения в письме.

Попробуйте после импорта email в явном виде задать импорт email.parser:

import poplib, email, email.parser

UPD: Проверил в Python 3.5, нормально работает.

Отредактировано old_monty (Дек. 18, 2015 19:13:09)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version