- Python 99.8%
- Shell 0.1%
|
|
||
|---|---|---|
| docs | ||
| docs_rus | ||
| fixtures | ||
| src/real_estate_parser | ||
| tests | ||
| .gitignore | ||
| AGENTS.md | ||
| build_exe.bat | ||
| build_exe.py | ||
| build_exe_system_browser.bat | ||
| HANDOFF.md | ||
| HANDOFF_NEXT.md | ||
| pyproject.toml | ||
| README.md | ||
| run_parser.sh | ||
Парсер новостроек
Программа собирает сведения о жилых комплексах из официальных источников: сайтов девелоперов, ЕРЗ.РФ, наш.дом.рф и OpenStreetMap.
На вход нужен Excel-файл со списком проектов. На выходе вы получите готовый отчет в Excel, HTML и JSON.
Быстрый старт
- Положите
real-estate-parser.exeв отдельную папку. - Откройте эту папку в Проводнике.
- Нажмите на адресную строку Проводника, введите
cmdи нажмите Enter. - Запустите программу, указав путь к входному Excel-файлу:
real-estate-parser.exe "C:\Users\Имя\Downloads\projects.xlsx"
Не закрывайте окно до завершения работы. Парсеру нужен интернет; обработка большого списка может занять продолжительное время.
Результаты появятся в папке:
reports\projects_DD-MM-YYYY_HH-MM\
Например:
reports\projects_10-07-2026_14-05\
В ней будут:
*.xlsx— основной отчет;*.html— отчет для просмотра в браузере;*.json— полный результат;parse.log— журнал работы, который пригодится при разборе ошибок.
Варианты запуска
Другая папка для отчетов
Укажите ее вторым параметром:
real-estate-parser.exe "C:\Data\projects.xlsx" "D:\Отчеты"
Внутри нее все равно будет создана отдельная папка с названием файла и временем запуска.
Открыть браузер для наш.дом.рф
Если наш.дом.рф показывает проверку или captcha:
real-estate-parser.exe "C:\Data\projects.xlsx" -- --nashdom-headful
Откроется окно браузера. Пройдите проверку и не закрывайте окно вручную. Сохраненная сессия будет использована при следующих запусках.
Не использовать браузер для наш.дом.рф
real-estate-parser.exe "C:\Data\projects.xlsx" -- --nashdom-no-browser
Обычно этот режим не рекомендуется: наш.дом.рф часто блокирует обычные запросы.
Не искать проект на ЕРЗ автоматически
real-estate-parser.exe "C:\Data\projects.xlsx" -- --erz-disable-search
Используйте этот вариант, только если в таблице уже заполнен точный erz_id или erz_url.
Не использовать дорожные маршруты OSRM
По умолчанию программа рассчитывает автомобильные маршруты через OSRM. Чтобы использовать приблизительную оценку по прямой:
real-estate-parser.exe "C:\Data\projects.xlsx" -- --routing-engine straight-line
Несколько параметров одновременно
real-estate-parser.exe "C:\Data\projects.xlsx" "D:\Отчеты" -- --nashdom-headful --routing-engine straight-line
Входной файл
Поддерживаются файлы .xlsx, .xlsm и .csv. Для Excel используется первый лист.
Названия колонок пишутся латиницей без изменений. Минимальный файл может содержать только две колонки:
| project_name | developer |
|---|---|
| Московский | Glorax |
| Сэтл Лофт | Setl Group |
Обязательные поля:
| Колонка | Что указать |
|---|---|
project_name |
Название жилого комплекса |
developer |
Название девелопера |
Полезные необязательные поля:
| Колонка | Что указать |
|---|---|
project_key |
Уникальное короткое обозначение строки. Если оставить пустым, программа создаст его сама |
region |
Регион, например Республика Татарстан |
settlement |
Город или другой населенный пункт |
lat |
Широта проекта |
lon |
Долгота проекта |
developer_project_url |
Официальная страница проекта у девелопера |
erz_id |
Точный ID проекта на ЕРЗ |
erz_url |
Ссылка на проект на ЕРЗ |
nashdom_object_id |
ID объекта на наш.дом.рф. Несколько ID можно разделить точкой с запятой |
nashdom_url |
Ссылка на объект на наш.дом.рф |
notes |
Любое примечание |
Необязательные колонки можно не добавлять. Но region, settlement и точные ссылки или ID помогают избежать выбора одноименных проектов.
Другие варианты названия проекта
Если проект называется по-разному в разных источниках, добавьте варианты в скобках:
Ситидзен (Сити.Дзен, City Zen)
Основным названием останется Ситидзен, а варианты в скобках помогут поиску.
Если программа просит выбрать проект
Когда ЕРЗ или наш.дом.рф не удается уверенно определить проект, программа показывает найденные варианты. В каждой строке указываются ID, название проекта, девелопер и адрес.
Можно ввести:
- номер варианта, например
1; - несколько номеров для наш.дом.рф, например
1,2,3; - точный ID проекта;
- другое название проекта для нового поиска;
retry— повторить попытку без изменения названия;skip— исключить этот проект из итогового отчета;- Enter — оставить источник без изменений и продолжить.
После ответа повторно обрабатываются только проекты, для которых вы что-то выбрали или ввели. Уже успешно полученные данные не удаляются из-за временной ошибки при повторной попытке.
Что важно знать
- Программа использует только официальные источники и OpenStreetMap. Данные с сайтов объявлений не подмешиваются.
- Отсутствующие цены, характеристики и адреса остаются пустыми. Программа не придумывает значения.
- Статус
готово с предупреждениямине означает полный провал. Отчет создан, но часть данных могла быть недоступна. - Сначала открывайте HTML или Excel. В них проще всего увидеть результаты и предупреждения.
- Для работы нужен стабильный интернет. ЕРЗ, наш.дом.рф и сайты девелоперов иногда временно отвечают ошибкой; в таком случае помогает
retry. - По умолчанию включены автоматический поиск ЕРЗ, поиск наш.дом.рф, уточнение региона и маршруты OSRM.
- Если используется версия
real-estate-parser-system-browser.exe, на компьютере должен быть установлен Google Chrome или Microsoft Edge. - Если программа завершилась неожиданно, приложите
parse.logк описанию проблемы.
Частые проблемы
Путь к файлу содержит пробелы
Всегда заключайте путь в двойные кавычки:
real-estate-parser.exe "C:\Мои файлы\Список проектов.xlsx"
Не найден входной файл
Проверьте путь, расширение файла и кавычки. Проще всего перетащить файл в окно cmd после текста real-estate-parser.exe — Windows сама вставит полный путь.
Открылось окно с captcha
Пройдите проверку и дождитесь продолжения работы программы. Не запускайте одновременно несколько копий парсера.
В отчете нет части данных
Откройте лист с предупреждениями и файл parse.log. Источник мог не публиковать эти сведения или временно быть недоступен.