Библиотека для работы с почтой ADFS
Project description
Библиотека AdfsMail
Обзор
AdfsMail — это библиотека Python для взаимодействия с электронными почтовыми сервисами, предоставляющая простой способ доступа и управления электронной почтой внутри VPN или извне с использованием многофакторной аутентификации (MFA). Библиотека поддерживает базовые операции с электронной почтой, такие как получение писем, доступ к метаданным писем и работа с вложениями.
Установка
Перед установкой AdfsMail убедитесь, что на вашей системе установлен Python. Установить AdfsMail можно с помощью pip:
pip install adfsmail
Использование
Внутри VPN
Для использования AdfsMail внутри VPN инициализируйте класс AdfsMail с вашим адресом электронной почты, паролем и доменом.
from adfsmail import AdfsMail
mail = AdfsMail(
'user@domain.ru',
'password', # Замените на ваш реальный пароль
'domain.ru'
)
Вне VPN с использованием многофакторной аутентификации
При доступе к почтовому сервису извне VPN используйте AdfsMailMFA для обработки многофакторной аутентификации.
from adfsmail import AdfsMailMFA
mail = AdfsMailMFA(
'user@domain.ru',
'password', # Замените на ваш реальный пароль
'domain.ru'
)
Получение писем
Получение первых 25 писем со своего ящика:
m = mail.get_mail()
Чтобы получить следующие 30 писем, укажите параметры offset (пропустить первые 25) и max_return (получить 30 сообщений):
m2 = mail.get_mail(offset=25, max_return=30)
Получение словаря доступных spa-ящиков:
spa = mail.get_available_spa()
Получение словаря доступных папок spa-ящика:
fold = mail.get_available_folders('spa@domain.ru')
Получение первых 25 писем со spa-ящика папки 'Входящие':
m_spa = get_mail_spa('spa@domain.ru', 'Входящие')
Операции с письмами
Вы можете выполнять различные операции с полученными письмами, такие как получение информации об отправителе, получателях, теме, теле письма, дате и времени, а также работать с вложениями.
Получить информацию об отправителе
# m[0] - первое письмо из списка
sender = m[0].get_from()
Получить информацию о получателях
recipients = m[0].get_to()
Получить тему письма
subject = m[0].get_subject()
Получить тело письма
body = m[0].get_body() # Обычно html
Получить дату и время получения письма
datetime_received = m[0].get_datetime()
Получить вложения
attachments = m[0].get_attachments()
Получить имя файла вложения
# m[0].get_attachments()[0] - первое вложение письма
attachment_filename = m[0].get_attachments()[0].get_filename()
Сохранить вложение в указанный путь
m[0].get_attachments()[0].save('path/to/save/file.xl')
Получить количество вложений
attachments_count = m[0].get_attachments_count()
Справочник API
В классах AdfsMail и AdfsMailMFA доступны следующие методы:
- get_mail(offset=0, max_return=25): Получает список писем, начиная с указанного offset и до max_return числа писем.
- get_from(): Возвращает отправителя письма.
- get_to(): Возвращает список получателей письма.
- get_subject(): Возвращает тему письма.
- get_body(): Возвращает тело письма.
- get_datetime(): Возвращает дату и время получения письма.
- get_attachments(): Возвращает список вложений в письме.
- get_attachments_count(): Возвращает количество вложений в письме.
Каждый объект вложения имеет следующие методы:
- get_filename(): Возвращает имя файла вложения.
- save(save_path): Сохраняет вложение по указанному пути.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.