Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные. Дагаев / Проект_Кларк_Блинов_Яковлев.docx
Скачиваний:
1
Добавлен:
02.01.2026
Размер:
2.13 Mб
Скачать

Глава 2. Разработка Telegram-бота

Рис. 2 - Схема приложения, логика работы

2.1 Планируемые возможности бота и подходы к их реализации

В рамках проекта были определены ключевые функциональные возможности, направленные на создание удобного и эффективного инструмента для сжатия и обработки изображений через Telegram-бота. Основное внимание уделено разработке интуитивно понятного интерфейса и надёжной системы обработки графических данных с поддержкой современных алгоритмов оптимизации.

Для обеспечения персонализированной работы реализована система сохранения пользовательских настроек. Каждый пользователь может настроить параметры сжатия — качество JPEG, целевой размер файла, ограничение разрешения и выбор формата — которые сохраняются в локальном профиле на основе его Telegram ID. Это позволяет обеспечить индивидуальный подход к обработке изображений без необходимости повторной настройки при каждом использовании бота.

Ядром системы является модуль адаптивного сжатия изображений. Бот автоматически определяет тип загружаемого изображения (фотография или графика) с помощью эвристического анализа, основанного на количестве уникальных цветов и резкости краёв. В зависимости от результата классификации выбирается оптимальный формат: для фотографий применяется JPEG с настраиваемым уровнем качества и прогрессивной развёрткой, а для графики и скриншотов — палитровый PNG с дизерингом, что обеспечивает значительное уменьшение размера при сохранении читаемости текста и чёткости контуров.

Для удобства пакетной обработки реализован режим сборки PDF. Пользователь может последовательно загружать несколько изображений, которые затем объединяются в один PDF-файл с сохранением порядка и исходного качества. Этот функционал особенно востребован при создании документации, портфолио или учебных материалов.

Особое внимание уделено защите приватности: реализована опция удаления EXIF-метаданных (геолокация, параметры съёмки, информация об устройстве), что позволяет исключить утечку личных данных при передаче изображений.

Для обеспечения стабильной работы и положительного пользовательского опыта в системе реализованы:

· Модульная архитектура с разделением логики обработки изображений, работы с файлами и взаимодействия с Telegram API

· Комплексная обработка ошибок (неподдерживаемые форматы, повреждённые файлы, превышение размеров)

· Асинхронная обработка запросов через aiogram и asyncio, позволяющая одновременно работать с множеством пользователей

· Кэширование промежуточных данных в оперативной памяти для ускорения обработки серийных операций

Такой подход позволяет создать полноценную платформу для оптимизации изображений, которая сочетает в себе удобство мессенджера Telegram с функциональностью профессиональных инструментов обработки графики.

Реализация указанных возможностей позволяет создать удобный и гибкий инструмент для сжатия и конвертации изображений, который легко расширять поддержкой новых форматов и алгоритмов. Использование асинхронной архитектуры, адаптивных алгоритмов выбора формата и системы персональных настроек обеспечивает стабильность, эффективность и индивидуальный подход к обработке графических данных.