Как мне определить Outlook "идентификатор сообщения" поверх imap / pop3 в Python? - PullRequest
0 голосов
/ 19 сентября 2019

Проблема

Я использую «приложение логики» в Azure для создания очереди входящих писем.При регистрации электронных писем используется «идентификатор сообщения», который описывается как «уникальный идентификатор сообщения».Я хотел бы иметь возможность получать электронные письма через imap с использованием этого идентификатора - возможно ли это?

Приложение логики "идентификатор сообщения"

  1. Пример "идентификатора сообщения":

AQMkADAwATM3ZmYAZS0yNTYwLWNkZAAzLTAwAi0wMAoARgAAA-U4TGbG56lEtdoXy_23gW0HAKhWKDtf5AJErHyhh_b9NYQAAHAHAHAHAHAHAJA

Пример приложения логики:

enter image description here

Что я пробовал

Я пытался просто загрузить все электронные письмакак eml, а затем прочитать их в notepad ++, чтобы увидеть, существует ли «идентификатор сообщения» в eml-файлах, но они не существуют.

# Library for downloading emails
import imaplib

# Logging in
mail = imaplib.IMAP4_SSL("outlook.office365.com",993)
mail.login(email_user, email_pass)

# Downloading emails to eml
mail.select('Inbox')
typ, data = mail.search(None, 'ALL')
for num in data[0].split():
    typ, data = mail.fetch(num, '(RFC822)')
    f = open('%s/%s.eml' %("/my/path/", num), 'wb')
    f.write(data[0][1])
mail.close()
mail.logout()

1 Ответ

0 голосов
/ 19 сентября 2019

Могу ли я знать, почему вы пытаетесь получить электронную почту через IMAP.Как вы можете получить электронную почту, используя идентификатор сообщения из Outlook OutI тоже.Вот API, который вы можете использовать:

GET https://outlook.office.com/api/v2.0/me/messages/{message_id}

Вы можете найти более подробную информацию здесь:

https://docs.microsoft.com/en-us/previous-versions/office/office-365-api/api/version-2.0/mail-rest-operations#GetMessages

Также просто для обновления, в Outlook вы не будете 'найдите идентификатор сообщения в .eml или в теле, оно доступно в заголовке интернета.Большинство клиентских утилит загружают заголовки (включая идентификатор сообщения) всех сообщений, сохраняют их, а затем обрабатывают их.Для перспективы вы можете найти его в интернет-заголовке, как показано ниже:

enter image description here

enter image description here

Ссылка:https://www.codetwo.com/kb/messageid/

Тем не менее, если вы хотите получить доступ к электронной почте с помощью IMAP, попробуйте ниже тему и посмотрите, поможет ли это:

https://www.go4expert.com/articles/accessing-email-using-imap-python-t28838/

https://social.msdn.microsoft.com/Forums/en-US/29f44441-feda-4f81-a04c-40d53b3dfdc5/how-to-access-an-email-using-messageid-in-outlook?forum=outlookdev

Надеюсь, это поможет.

...