LINUX.ORG.RU

проблема с imap в python


0

1

Не могу прочитать отправленные сообщения. гуглил, но, к сожалению ничего не нашел. Вот этот небольшой исходник

import imaplib
 
server = "imap.yandex.ru"
port = "143"
login = "****@yandex.ru"
password = "123456"
box = imaplib.IMAP4(server)
box.login(login, password)
box.select('sent')
typ, data = box.search(None, 'All')
typ, text = box.fetch(1, '(RFC822)')
newText = "".join(text[0][1])
#parsMsg = email.message_from_string(newText)
#for i in re.findall(r"(<!DOCTYPE HTML PUBLIC.+</html>)", " ".join(newText.split())):#newText):
 #   print i
box.close()
box.logout()

на что интерпретатор пишет мне : imaplib.error: command SEARCH illegal in state AUTH, only allowed in states SELECTED

box.select('sent')

Прозреваю, что на сервере нет такой папки. box.list() позволит узнать точное название. Скорее всего будет 'INBOX/Sent'.

baverman ★★★
()

переменная port не используется.

true_admin ★★★★★
()

Посмотри tcpdump'ом как отрабатывают все команды в сессии, может быть imaplib не отлавливает некоторые ошибки.

mashina ★★★★★
()
Ответ на: комментарий от snakeduse

Да, и папка sent тоже присутствует на сервере

У меня imap.yandex.ru работает только через ssl. То есть IMAP4_SSL. И папки sent как-то не видно.

baverman ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.