Ошибка imap EOF при получении писем из входящих - PullRequest
0 голосов
/ 12 апреля 2019

я пытаюсь получить тело письма из учетной записи Gmail, используя imaplib.

Вот код, который я придумал:

import imaplib
import email

user = '********@gmail.com'
password = '*********'
imap_url = 'imap.gmail.com'


def get_body(msg):

    if msg.is_multipart:

        return get_body(msg.get_payload(0))

    else:

        msg.get_payload(None, True)


con = imaplib.IMAP4_SSL(imap_url)

con.login(user, password)

con.select('INBOX')

result, data = con.fetch(b'1', '(RFC822')    #b'1' to get most recent
raw = email.message_from_bytes(data[0][1])

print(get_body(raw))

Однако я получаю это сообщение об ошибке:

raise self.abort('socket error: EOF')
imaplib.abort: socket error: EOF

Не уверен, что не работает правильно, так как я использовал con.list () для проверки 'INBOX', и в данный момент в этой учетной записи есть два электронных письма, поэтому он не пустой. Заранее спасибо, если сможете помочь!

...