Прочитать письма
Описание
Блок получает электронные письма из почтового ящика с использованием протокола IMAP.
Описание параметров
Блок имеет ряд параметров:
-
Логин - логин от почтового аккаунта отправителя;
Тип данных:
str (Строка)Пример:
user -
Пароль - пароль от почтового аккаунта отправителя;
Тип данных:
str (Строка)Пример:
password -
Адрес сервера - адрес почтового сервера;
Тип данных:
str (Строка)Пример:
imap.puzzlerpa.ru -
Кодировка сервера - кодировка почтового сервера;
Тип данных:
str (Строка)Пример:
KOI8-R -
Порт - номер порта;
Тип данных:
int (Целое число)Пример:
993 -
SSL/TLS - используемый протокол безопасности (SSL/TLS);
Тип данных:
checkbox (Чекбокс)Пример:
Истина -
Получить тело сообщения в формате - формат получаемых сообщений;
Тип данных:
str (Выпадающий список)Пример:
текст -
Сохранить вложения - директория для сохранения вложений;
Тип данных:
str (Строка)Пример:
C:\folder
Дополнительные параметры
Дополнительно нажатием на + Добавить параметр можно добавлять следующие параметры:
- Дата, с которой получать сообщения - письма, полученные начиная с указанной даты;
- Дата, до которой получать сообщения - письма, полученные до указанной даты;
- Отправитель - адрес отправителя;
- Получатель - адрес получателя;
- Тема сообщения - подстрока в теме письма;
- Тело сообщения - подстрока в тексте письма;
- Подстрока в теме или теле сообщения - подстрока в теме или тексте письма;
- ID-сообщения - уникальный идентификатор письма (UID) на сервере;
- Наличие вложения - истина - только письма с вложением, ложь - только письма без вложений;
- Наличие флага - истина - только отмеченные флагом письма, ложь - только письма без флага;
- Наличие ответа - истина - только письма, на которые был отправлен ответ, ложь - только письма без ответа;
- Получить только непрочитанные - истина - только непрочитанные письма, ложь - все письма независимо от статуса прочтения;
- Отметить сообщение прочитанным - отмечает полученные письма как прочитанные;
- Установить флаг на сообщение - устанавливает флаг на полученные письма.
Возвращаемое значение
Блок возвращает массив писем, полученных с почтового сервера.
[ { '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 сообщений.
Пример работы с вложениями
В данном примере демонстрируется перебор вложений из полученного письма. Для этого:
- В переменную messages сохраняется список писем, загруженных с почтового сервера;
- В переменную message записывается последнее письмо из этого списка;
- Из словаря message извлекается значение по ключу attachments_list и сохраняется в переменную attachments_list — это список путей к сохранённым вложениям;
- Выполняется итерация по списку attachments_list, и каждый путь к файлу выводится на экран.
Пример использования
В данном примере демонстрируется работа с полученными сообщениями - извлечение тела сообщения (body):
- В переменную messages сохраняется список писем, загруженных с почтового сервера. Установлены фильтры:
- Дата с которой получать сообщения - получить сообщения с 10.10.2025;
- Тема сообщения - получить сообщения с темой “Сообщение от Puzzle RPA”;
- Наличие вложения - (истина) получить только сообщения с вложением;
- Получить только непрочитанные - (истина) получить только непрочитанные сообщения;
- Наличие ответа - (ложь) получить только сообщения, на которые ещё не отправлен ответ.
- Итерация по сообщениям и вывод на экран тела сообщения (по ключу body)
Результат
Вывод результата на экран: