Вы когда-нибудь пробовали парсить сайты недвижимости, но потом натыкались на стену CAPTCHA, ограничения по скорости, перенаправления или блокировки по IP? Это как выполнить всю сложную работу и застрять на финишной прямой.
Итак, если вы основатель, создающий платформу данных об аренде, или разработчик, просто пытающийся собрать списки в Excel для аналитики, такие препятствия могут стать камнем преткновения.
Но что, если бы существовал более чистый способ извлечения точных, структурированных данных о недвижимости без обычных проблем, которому доверяют более 70 000 команд разработчиков? Звучит как сказка, правда? Не совсем. Встречайте! Crawlbase, единственный инструмент, который вам когда-либо понадобится для веб-скрапинга на базе искусственного интеллекта.
Вот краткое руководство по автоматизации операций с недвижимостью с помощью... Crawlbase:
Пошаговое руководство по созданию парсера данных о недвижимости
В этом руководстве показано, как извлечь данные о недвижимости с двух сайтов недвижимости: поместье и Ре/макс. с помощью Crawlbase Crawling API. Мы извлечём такие данные, как цена, количество кроватей, количество ванных комнат, площадь в квадратных футах и адрес, а затем экспортируем их в таблицу Excel.

Вам не нужно управлять прокси-серверами, CAPTCHA или рендерингом JavaScript. Crawlbase Мы сделаем всё это за вас. Итак, не беспокойтесь, приступим.
1. Предпосылки
Прежде чем начать, убедитесь, что у вас есть:
- Node.js установлен
- IDE/редактор кода по вашему выбору
- A Crawlbase Crawling API токен → Получите это здесь (1000 бесплатных запросов)
- Базовое понимание JavaScript/Node (достаточное для чтения функций)
2. Установите необходимые пакеты.
Откройте терминал и выполните:
1 | инициализация npm -y |
Эти пакеты обрабатывают:
- Cheerio: Для извлечения контента из HTML, например jQuery
- ExcelJS: для записи списков в файл Excel
- Crawlbase: Для обхода CAPTCHA, блокировок и ограничений
3. Создайте файлы скриптов и импортируйте необходимые модули.
Сначала создайте 2 новых файла для 2 разных скриптов с названиями estately.js и remax.js. И вот как будет выглядеть структура вашего проекта:

Затем импортируйте необходимые библиотеки, вставив следующее вверху:
1 | Const Привет = требовать('привет'); |
Эти строки кода необходимы для обоих скриптов, поэтому не забудьте их добавить.
Теперь давайте посмотрим, что изменилось
Поскольку у нас есть два разных скрипта для двух разных объявлений о недвижимости на сайте, вот что мы собираемся сделать:
- Сначала мы поделимся полным кодом функции для каждого скрипта.
- Во-вторых, вы посмотрите на код в целом и попробуете его
- Наконец, мы шаг за шагом разберём скрипт Estately. Поскольку оба скрипта имеют схожую структуру, понимание одного из них облегчит понимание другого.
1. Как получить скидку на недвижимость
Что оно делает:
- Посещает объявления Estately о Кейп-Корале
- Выписывает цену, количество кроватей, ванных комнат, кв. футов и адрес
- Сохраняет все в Excel
Добавить эту функцию:
1 | // Не забудьте добавить общую логику выше |
Теперь откройте терминал и запустите node estately.js, и посмотрите результаты:

В результате:

2. Как парсить Remax
Что оно делает:
- Списки сдающихся в аренду домов Scrapes Re/Max в Лос-Анджелесе
- Выписывает цену, количество кроватей, ванных комнат, кв. футов и адрес
- Сортирует по цене и сохраняет в Excel
Добавить эту функцию:
1 | // Не забудьте добавить общую логику выше |
Теперь откройте терминал и запустите node remax.js, и посмотрите результаты:

Результаты:

Пошаговое объяснение сценария Estately
1. Импортируйте необходимые библиотеки.
- Cheerio: анализирует и извлекает данные из HTML (как jQuery).
- exceljs: помогает создавать и сохранять файлы Excel.
- CrawlingAPI: Происходит от Crawlbase для загрузки/отображения страниц (особенно динамических).
1 | Const Привет = требовать('привет'); |
2. Запустите асинхронный IIFE
- Выражение немедленно вызываемой функции (IIFE) используется для немедленного запуска асинхронного кода.
tryиcatchобрабатывает любые ошибки во время выполнения.
1 | (асинхронной () => { |
3. Создавать Crawlbase API и веб-страница Fetch
- Инициализирует
CrawlingAPIс вашим API-токеном. - Ориентирован на объекты недвижимости в Кейп-Корал, Флорида, на сайте Estately.
response.bodyсодержит HTML-содержимое страницы.
1 | Const API = новый CrawlingAPI({ знак: «ВАШ ТОКЕН» }); |
4. Загрузите HTML с помощью Cheerio
- Загружает HTML в Cheerio для обхода DOM:
1 | Const $ = привет.загрузка(html); |
5. Извлечение данных о недвижимости
- Находит все карточки недвижимости, используя
div.result-item-details. - Для каждой карты:
- Извлекает цену, затем удаляет $, ,, и т.д. для сортировки
priceValue. - Получает кровати, ванны и кв. футы от
<ul>><li>структуры. - Извлекает адрес.
- Извлекает цену, затем удаляет $, ,, и т.д. для сортировки
- Помещает каждый структурированный объект свойства в
propertiesмассив.
1 | Const свойства = []; |
6. Сортировать недвижимость по цене (по возрастанию)
- Гарантирует, что более дешевые объекты будут представлены первыми.
1 | свойства.sort((а, б) => a.ценаСтоимость - b.ценаСтоимость); |
7. Создает файл Excel и добавляет данные
- Инициализирует новую книгу и лист Excel:
1 | свойства.sort((а, б) => a.ценаСтоимость - b.ценаСтоимость); |
- Определяет заголовки и ширину столбцов для файла Excel:
1 | лист.столбцы знак равно |
- Добавляет каждый объект свойства как новую строку:
1 | свойства.Foreach((p) => лист.addRow(п)); |
8. Сохраните файл с указанием имени и времени.
- Форматирует текущую метку времени.
- Сохраняет файл под уникальным именем.
1 | Const метка времени = новый Время().toISOString().заменить(/[:.]/г, '-'); |
9. Ведение журнала успешных и ошибочных действий
- Сообщение об успешном завершении:
1 | консоль.журнал(`✅ Соскоблено и сохранено ${properties.length} свойства для ${filePath}`); |
- Регистрирует любые ошибки, если очистка не удалась:
1 | поймать (ошибка) { |
Заключение
Сбор данных о недвижимости не обязательно должен быть мучительным. Благодаря сочетанию Crawlbase + Cheerio + ExcelJS — вы получаете простой, масштабируемый процесс, который просто работает.
Вместо того чтобы защищаться от CAPTCHA и банов, вы должны иметь возможность создавать то, что хотите: ценностно-ориентированные инструменты, интеллектуальные панели управления или даже простые отчеты.
Если вы ищете способ надежного извлечения данных из сложных защищенных сайтов, Crawlbase единственный инструмент для веб-скрапинга, который вам когда-либо понадобится.











