Перейти к содержимому

Прочитать письма

image_1

Описание

Блок получает электронные письма из почтового ящика с использованием протокола IMAP.

Описание параметров

Блок имеет ряд параметр:

  1. Логин - логин от почтового аккаунта отправителя;

    Тип данных: str (Строка)

    Пример: user

  2. Пароль - пароль от почтового аккаунта отправителя;

    Тип данных: str (Строка)

    Пример: password

  3. Настройки сервера - адрес почтового сервера;

    Тип данных: str (Строка)

    Пример: imap.puzzlerpa.ru

  4. Кодировка сервера - кодировка почтового сервера;

    Тип данных: str (Строка)

    Пример: KOI8-R

  5. Порт - номер порта;

    Тип данных: int (Целое число)

    Пример: 993

  6. SSL/TLS - используемый протокол безопасности (SSL/TLS);

    Тип данных: checkbox (Чекбокс)

    Пример: Истина

  7. Получить тело сообщения в формате - формат получаемых сообщений;

    Тип данных: str (Выпадающий список)

    Пример: текст

  8. Сохранить вложения - директория для сохранения вложений;

    Тип данных: str (Строка)

    Пример: C:\folder

Дополнительные параметры

Дополнительно нажатием на + можно добавлять следующие параметры:

  • Дату, с которой получать сообщения;
  • Дату, до которой получать сообщения;
  • Отправителя;
  • Получателя;
  • Тему сообщения;
  • Тело сообщения;
  • Подстроку в теме или теле сообщения;
  • ID-сообщения;
  • Наличие вложения;
  • Наличие флага;
  • Получить только не прочитанные;
  • Отметить сообщение прочитанным;
  • Отметить сообщение флагом.
image_2

Возвращаемое значение

Блок возвращает массив писем, полученных с почтового сервера.

[
{
'subject': 'Тема сообщения',
'name_from': 'Имя отправителя',
'email_from': 'Адрес почты отправителя',
'name_to': 'Имя получателя',
'email_to': 'Адрес почты получателя',
'other_emails_to': None,
'date': '2025-10-07 22:44:04+03:00',
'body': 'Тело сообщения',
'uid': '230',
'there_is_file': 'True',
'attachments_path': 'C:\папка_для_сохранения_вложений',
'attachments_list': ['C:\папка_для_сохранения_вложений\вложение_1.txt', 'C:\папка_для_сохранения_вложений\вложение_2.txt']
},
...
]

Каждое письмо представлено в виде словаря со следующими ключами:

  • subject — тема письма;
  • name_from — имя отправителя (если указано в письме);
  • email_from — адрес электронной почты отправителя;
  • name_to — имя основного получателя письма;
  • email_to — адрес электронной почты основного получателя;
  • other_emails_to — список дополнительных адресов получателей из поля «Кому»;
  • date — дата и время получения письма в формате YYYY-MM-DD HH:MM:SS±HH:MM;
  • body — текстовое содержимое письма (тело сообщения);
  • uid — уникальный идентификатор письма на IMAP-сервере, используемый для однозначной идентификации сообщения в рамках почтового ящика;
  • there_is_file — флаг, указывающий, содержит ли письмо вложения (True или False в виде строки);
  • attachments_path — путь к локальной папке, в которую сохранены все вложения из данного письма;
  • attachments_list — массив полных путей к сохранённым файлам-вложениям. Каждый элемент — строка с абсолютным путём к файлу. Если вложений нет, список может быть пустым.

Сохранение вложений

Вложения сохраняются в директорию указанную в разъеме Сохранить вложения в и сортируются по UID сообщений.

image_3

Пример работы с вложениями

В данном примере демонстрируется перебор вложений из полученного письма. Для этого:

  1. В переменную messages сохраняется список писем, загруженных с почтового сервера;
  2. В переменную message записывается последнее письмо из этого списка;
  3. Из словаря message извлекается значение по ключу attachments_list и сохраняется в переменную attachments_list — это список путей к сохранённым вложениям;
  4. Выполняется итерация по списку attachments_list, и каждый путь к файлу выводится на экран.
image_4

Пример использования

В данном примере демонстрируется работа с полученными сообщениями - извлечение тела сообщения (body):

  1. В переменную messages сохраняется список писем, загруженных с почтового сервера. Установлены фильтры:
    • Дата с которой получать сообщения - получить сообщения с 10.10.2025;
    • Тема сообщения - получить сообщения с темой “Сообщение от Puzzle RPA”;
    • Наличие вложения - (Истина) получить только сообщения с вложением;
    • Получить только непрочитанные - (Истина) получить только непрочитанные сообщения.
  2. Итерация по сообщениям и вывод на экран тела сообщения (по ключу body)
image_5

Результат

Вывод результата на экран:

image_6