Хочу бота!
quality of life

ЖКУ Монитор

Автоматический учёт коммунальных платежей: почта → PDF → Notion → дашборд → Telegram. Никакой ручной работы с квитанциями.

Python pdfplumber Notion Telegram Jinja2 Chart.js Docker
О проекте

ЖКУ Монитор — персональный инструмент для учёта коммунальных расходов по нескольким объектам субаренды. Раз в день система сама проверяет Mail.ru по IMAP, находит письма с расшифровками от бухгалтера и скачивает PDF-вложения. Каждый PDF разбирается на статьи расходов (ЕИРЦ, электричество, вода, отопление, газ, вывоз ТКО, интернет), определяется объект и период, а затем данные записываются в отдельные базы Notion с проверкой дубликатов. На основе этих данных генерируется статичный HTML-дашборд с графиками Chart.js и выкладывается на VPS через rsync. Когда все объекты за месяц закрыты, в Telegram прилетает сводка со ссылкой на дашборд. Стек: Python 3.11, pdfplumber, notion-client, aiogram 3, Jinja2, Docker, cron на Timeweb VPS.

Как это работает
📧
Письмо на Mail.ru
input
Бухгалтер присылает PDF-расшифровку ЖКУ раз в месяц
📥
IMAP-парсер
imaplib
Cron раз в день качает новые PDF-вложения по теме письма
📄
Разбор PDF
pdfplumber
Из таблицы извлекаются объект, период и суммы по статьям
🗂
Запись в Notion
Notion API
Данные кладутся в базу нужного объекта с дедупликацией по периоду
📊
Генерация дашборда
Jinja2 + Chart.js
HTML с графиками динамики расходов, деплой через rsync на VPS
💬
Сводка в Telegram
output
Когда все объекты за месяц закрыты — уведомление со ссылкой на дашборд