Инструкция
Как запустить скрипт для ГИС ЖКХ
Все наши скрипты работают одинаково: подключаются к уже открытому у вас Chrome, в котором вы сами вошли в ГИС ЖКХ. Подготовка занимает несколько минут и делается один раз.
1. Установите окружение (один раз)
Если вы используете готовый .exe, этот шаг можно пропустить. Для запуска из исходников нужен Python 3. В папке со скриптами выполните:
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
playwright install chromium
2. Запустите Chrome с отладочным портом
Скрипты подключаются к браузеру по адресу 127.0.0.1:9222. Запустите отдельный Chrome со своим профилем: он не мешает обычному браузеру и хранит вход в ГИС ЖКХ отдельно.
start chrome --remote-debugging-port=9222 --user-data-dir="C:\ChromeDebug"
Удобнее положить эту строку в файл start_chrome_debug.bat и запускать двойным щелчком.
3. Войдите в ГИС ЖКХ сами
В открывшемся Chrome нажмите «Войти», авторизуйтесь через Госуслуги и выберите свою организацию. Дождитесь личного кабинета организации. Скрипту логин и пароль не нужны: он авторизацию не трогает и работает в вашей сессии.
4. Откройте нужный раздел
Каждый скрипт ждёт, что открыта определённая страница: карточка дома со вкладкой «Информация о помещениях», реестр договоров или вкладка «Фиксация работ и услуг». Что именно открыть, написано на странице скрипта в блоке «Как запустить».
5. Запустите скрипт и не трогайте браузер
Пока скрипт работает, не кликайте в окне Chrome и не переключайте вкладки: скрипт работает в первой вкладке. По окончании окно не закрывается само — нажмите Enter. Подробный журнал каждого запуска сохраняется в папку logs.
Правила безопасной работы
- Начинайте с малого. Один дом, несколько договоров или пробный прогон, если он есть у скрипта.
- Сверяйте результат в ГИС ЖКХ. Ответственность за размещаемую информацию остаётся на организации.
- Делайте копии. Перед скриптами, которые пишут в вашу базу, сохраните резервную копию и проверьте, где лежит файл отката.
- Не публикуйте скрипты вместе с паролями. Адреса серверов, токены и пароли храните в переменных окружения, а не в коде.
Частые ошибки
| Что видите | Причина и решение |
|---|---|
connect EACCES ::1:9222 | Chrome слушает отладочный порт только по IPv4, а localhost на части компьютеров сначала превращается в IPv6. Подключайтесь по 127.0.0.1 — в наших скриптах это уже сделано. |
| «Ошибка подключения» при старте | Chrome не запущен с отладочным портом или запущен без --remote-debugging-port=9222. Закройте его и запустите по шагу 2. |
| Скрипт «ничего не находит» на странице | Открыта не та вкладка или не тот раздел ГИС. Вернитесь к шагу 4. Если ГИС ЖКХ недавно обновил интерфейс, напишите нам — поправим скрипт. |
| Скрипт остановился посередине | Запустите его снова: уже обработанные записи ГИС ЖКХ отсеет сам или скрипт их пропустит. Некоторые скрипты умеют начинать с нужной страницы. |
Вопросы и ответы
Почему скрипты подключаются к Chrome по порту 9222?
Так вы входите в ГИС ЖКХ сами, а скрипт работает в уже авторизованной сессии. Скрипту не нужны ни логин, ни пароль от Госуслуг.
Что делать с ошибкой connect EACCES ::1:9222?
Chrome слушает отладочный порт только по IPv4, а адрес localhost на части компьютеров сначала превращается в IPv6. Подключайтесь по адресу 127.0.0.1 — в наших скриптах это уже сделано.
Можно ли запускать скрипт на нескольких домах подряд?
Да, но начинайте с одного дома или с пробного прогона, проверьте результат в ГИС ЖКХ и только потом переходите к остальным.
Где искать логи, если скрипт упал?
В папке logs рядом со скриптами: туда пишется отдельный файл на каждый запуск с полным текстом ошибки.