3.0 KiB
3.0 KiB
Yandex Mail Archiver to .EML (MVC Model)
Разработана с целью архивации писем со вложениями в локальную папку и дальнейшей ручной очистки переполненных почтовых ящиков.
✨ Особенности
- Архитектура MVC: Код разделен на независимые слои, легко масштабируется и читается.
- Безопасный бэкап: Приложение не удаляет письма автоматически. Вы сами проверяете архив и очищаете сервер Яндекса.
- Сохранение вложений: Формат .eml сохраняет структуру письма, HTML-разметку и встроенные файлы.
- Современный UI: Графический интерфейс на базе customtkinter с поддержкой темных/светлых системных тем.
- Сохранение настроек: Настройки авторизации и пути сохраняются в локальный config.json.
🗝️ Подготовка к работе
Для подключения к Яндекс Почте необходимо использовать Пароль приложения:
- Перейдите в настройки Яндекс ID -> Безопасность -> Пароли приложений.
- Создайте новый пароль приложения для типа Почта (IMAP).
- Используйте созданный пароль в программе вместо основного пароля от аккаунта.
🚀 Запуск из исходного кода
- Создайте и активируйте виртуальное окружение:
python -m venv venv
Для Windows:
venv\Scripts\activate
- Установите зависимости:
pip install -r requirements.txt
- Запустите программу:
python main.py
📦 Сборка в автономный .EXE файл
Для упаковки утилиты в один исполняемый файл для Windows со всеми ресурсами и метаданными:
pip install pyinstaller pillow
pyinstaller --noconfirm --onefile --windowed --icon="app_icon.ico" --version-file="version.txt" --add-data "venv/Lib/site-packages/customtkinter;customtkinter/" --name "YandexMailArchiver" main.py
Готовый файл YandexMailArchiver.exe появится в каталоге dist/.
🛠️ Совместимость
Рекомендуется использовать совместно с портативной утилитой просмотра MiTeC Mail Viewer. Она позволяет открывать созданную папку как локальную базу писем с удобным поиском.