СКР-10 Договоры и акты
Выгрузка действующих договоров из ГИС ЖКХ в Excel и CSV
Собирает действующие договоры из реестра ГИС и сохраняет их в Excel и CSV: номер, дата, подрядчик, заказчик.
Какую задачу решает
ГИС ЖКХ удобно показывает реестр договоров на экране, но не даёт одной кнопкой выгрузить его в таблицу с нужными полями. Когда нужно сверить договоры с учётной системой или посчитать их, данные приходится переписывать руками.
Скрипт обходит реестр и складывает всё в Excel и CSV.
Что делает скрипт
- В реестре договоров текущей организации выставляет фильтр «Действующий» и нажимает «Найти».
- Собирает ссылки на страницы просмотра договоров из карточек реестра, обходя все страницы пагинации. Страница просмотра только читает данные, она ничего не меняет в ГИС.
- Читает номер и дату договора, ИНН и наименование подрядчика (исполнителя), ИНН и наименование заказчика.
- Сохраняет собранное в Excel и CSV в папку data: для аудита видно, что собрано.
- Без флага --dry-run скрипт дополнительно сверяет договоры с вашим сервисом, отбрасывает уже существующие и отправляет только новые.
Что понадобится
- Windows и Google Chrome с отладочным портом 9222.
- Python 3, Playwright, pandas, openpyxl.
- Доступ к реестру договоров организации в ГИС ЖКХ.
Как запустить
- Запустите Chrome с отладочным портом и войдите в ГИС ЖКХ под нужной организацией.
- Запустите: python sync_existing_contracts_gis.py --dry-run — скрипт только соберёт данные и сохранит таблицы.
- Результат лежит в папке data: файлы existing_contracts_gis_<дата_время>.xlsx и .csv.
Общая подготовка — Chrome, Python, Playwright — описана на странице «Как запустить».
Ограничения и на что обратить внимание
- Без флага --dry-run скрипт сразу отправляет собранные договоры в сервис, адрес которого указан в коде. Замените адрес и учётные данные на свои или всегда запускайте с --dry-run.
- Выгружаются только договоры в статусе «Действующий».
Вопросы и ответы
Меняет ли скрипт что-нибудь в ГИС ЖКХ?
Нет. Он открывает страницы просмотра договоров, которые только читаются, и ничего не нажимает на формах редактирования.
В каком виде получаю данные?
В Excel и CSV: номер и дата договора, ИНН и наименование подрядчика, ИНН и наименование заказчика.