Описание
Программа, которая запускается из командной строки и извлекает данные из PDF-квитанций в Excel.
Иллюстрация работы программы
Задача
-
У меня есть файл для проверки квитанций за коммунальные услуги ([1] - в файлах ниже) - правильно ли мне начисляют суммы.
-
Для этого из каждой квитанции мне нужны одинаковые данные: объем потребления, тариф, сумма. НО: все квитанции приходят от разных компаний и имеют разный формат.
→ Как же сделать так, чтобы не обрабатывать каждую квитанцию вручную, а получить нужные значения одним списком?
Spoiler: Python.
Пожелания:
- Одновременное извлечение данных из всех PDF-квитанций в одной папке.
- Получить данные в готовом формате для вставки в таблицу проверки.
Полученные данные используются для проверки
Решение
Создание программы.
Реализация через код на Python.
Результат
- Единая структурированная таблица для дальнейшей проверки начислений
- Приятный трепет в груди - это ощущение, когда одной строкой кода на глазах происходит трансформация
Как это работает
Для пользователя
- В одной папке сохраняются все квитанции за месяц.
- В командной строке запускается программа.
- Открывается Excel файл с объединенными данными.
Логика работы программы
- Загружаются PDF-файлы из папки
- Определяется тип поставщика (электроэнергия, вода, ТКО и т.д.)
- Извлекаются ключевые значения:
- объём потребления
- тариф
- сумма начислений
- Данные приводятся к единому формату
- Формируется итоговый файл:
CSVExcel

Типы квитанций:
- Электроэнергия
- Водоснабжение
- ТКО (вывоз мусора)
- Капитальный ремонт
- Общедомовые услуги
Сложности и решения
Основная сложность — различие форматов PDF у разных поставщиков.
Т.е. решение пока не унифицировано - нельзя взять любую квитанцию и получить из нее данные.
Под каждый новый вид квитанции код нужно адаптировать.
На будущее — Идеи развития
- автоматизировать сохранение квитанций в папку (через API сайтов поставщиков или приложения ЖКХ)
- соединить с файлом проверки (отправка полученных данных сразу в инструмент проверки напрямую, без выгрузки в отдельный файл Excel)
Инструменты
- Python — основная логика
- pdfplumber (библиотека) — извлечение данных из PDF
- pandas (библиотека) — обработка таблиц
- Excel
→ Репозиторий проекта на Github
→ [1] Инструмент проверки квитанций