Автоматизация
ikus.pesc.ru
Автоподача показаний воды и электричества в личный кабинет — без участия человека.
Что это
FastAPI-сервис с веб-интерфейсом и планировщиком. Показывает текущие показания всех счётчиков, позволяет отправить их вручную и — главное — подаёт автоматически в нужное окно месяца, в рабочие дни, с журналом каждой попытки и её результата.
Задача, которую решает
Ежемесячная рутина, которую легко забыть, а забывчивость стоит денег — расчёт уходит по нормативу. Задача закрыта полностью: человек в процессе не участвует вообще, ему остаётся только посмотреть журнал, если захочется.
Что демонстрирует
- Автоматизацию до конца: результат — состояние «человек не участвует», а не «удобная кнопка»; окно подачи и рабочие дни заложены в логику планировщика.
- Работу с недокументированным API: авторизация личного кабинета разобрана и воспроизведена, включая TOTP-верификацию.
- Тестирование внешней интеграции через моки: HTTP внешнего кабинета мокируется — без флаки-запросов в живой сервис.
- Скорость: рабочая автоматизация за четыре дня — один из трёх сервисов «семейства счётчиков», сделанных за один и тот же срок.
Факты
Стек и подход
Ядро: Python 3.10+, FastAPI, Uvicorn, Jinja2, httpx, pydantic, SQLite.
Планировщик: APScheduler — расписание подачи вынесено отдельным модулем.
Структура: веб-слой и роутеры отдельно, клиент личного кабинета — изолированным пакетом.
Тесты: pytest с мокированием внешнего HTTP; Deploy: Docker.
Теги
След ИИ-процесса
Проект ведётся под контекстным файлом агента, а README сознательно написан для нетехнического читателя: «программа сама заходит на сайт и каждый месяц подаёт показания», пошаговая установка с объяснением каждой переменной. Тон документации здесь — выбранное решение, а не побочный продукт генерации.
Почему это отвечает роли «превратить AI-кейсы в стандарт»
Малый кейс с ясной границей ценности: видно, что автоматизация считается завершённой только когда из процесса убран человек. Вместе с двумя соседними сервисами показывает, как одно отработанное решение размножается на новых поставщиков.