Workspace Digital Awards 2025 — успейте номинировать кейсы по льготной цене до 1 декабря. Принять участие!
Batonis
Парсинг недвижимости для proptech стартапа
Batonis
#Разработка программного обеспечения

Парсинг недвижимости для proptech стартапа

189 
Batonis
Batonis Россия, Екатеринбург
Поделиться:
Клиент

Kokoc.tech

Бюджет

500 000

Сфера

Недвижимость

Регион

Россия, Екатеринбург

Сдано

Январь 2023

Задача

Для сервиса по поиску недвижимости нужно постоянно собирать данные с сайтов конкурентов, чтобы предлагать пользователям актуальную информацию.

Нужно было разработать микросервис на Django, который собирал бы квартиры, жилые комплексы и планировки с сайта-конкурента.

Решение

Полная версия кейса: https://batonis.tech/ru/cases/property-parsing-ru

ОСОБЕННОСТИ ПРОЕКТА

1. Собранную информацию нужно “очистить”, чтобы не был заметен факт парсинга

2. Сайт-донор имеет необычную структуру: у сущностей нет сквозных идентификаторов, информация представлена на трех языках, а объем информации на разных языках может отличаться

3. В сайт встроена защита от парсинга

РЕШЕНИЕ

Мы разработали Django приложение, которое периодически обходит сайт-донор и обновляет данные. Так как сайт очень большой, парсинг был сегментирован по сущностям. Каждым сегментом можно управлять через админ-панель.

Очень много контента на сайте спрятано за интерактивными элементами: попапы, карусели и ссылки на внешние ресурсы. Чтобы решить эту проблему мы использовали Selenium – инструмент для автоматизированного управления браузерами. С его помощью мы эмулировали действия пользователя на сайте и доставали скрытый контент. Использование selenium так же решило проблему с защитой от парсинга сайта - при наличии кликов по странице программа не определялась как робот.

Собранные данные проходили обработку через два дополнительных сервиса: рерайтер и переводчик. Так как контент на сайте-доноре отличается в зависимости языка, возникают ситуации, когда поле в объекте заполнено только на одном языке. После парсинга мы проводим перекрестную проверку между языковыми версиям и, если это возможно, заполняем пробелы в одном языке с помощью контента из другого, переводя текст в нужный язык.

После этого, с помощью нейросети, переписывались чувствительные к авторскому праву тексты. Например, описание от продавца. Для рерайтинга был использован внешний сервис из маркетплейса RapidAPI

Для удобного использования, мы делали несколько улучшений в админ панель:

- Добавили множество фильтров и колонок:

- Сделали кастомный экран с настройками:

И подготовили подробные гайды по развертыванию сервиса в инфраструктуре клиента.

1Схема работы сервиса

Результат

Проект был сделан точно в срок и передан клиенту. Микросервис постоянно работает в ИТ инфраструктуре заказчика и обновляет данные о недвижимости. В дальнейшем мы будем создавать подобные сервисы и для других источников.


Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Batonis с удовольствием обсудит вашу задачу

Оставить заявку