Поиск жилья при помощи Slack-бота

Разработчик из Бостона Вик Паручури описал в своём блоге процесс поиска жилья в Сан-Франциско. Чтобы не тратить время на сортировку объявлений на различных сайтах недвижимости, программист создал Slack-бота, который следил за новыми объявлениями и проверял их на соответствие критериям поиска.

Разработчик Вик Паручури переехал из Бостона в Кремниевую долину весной 2016 года. «Моя девушка и я слышали все возможные истории ужасов о рынке недвижимости Сан-Франциско. То, что Google по запросу “Как найти жилье в Сан-Франциско” выдает такое множество страниц с советами, только подтверждает это», — пишет Паручури.

Хорошее жилье в Долине долго не пустует — обычно апартаменты достаются первому пришедшему с комплектом документов и предоплатой, обратил внимание разработчик. Сначала он начал поиск с изучения популярных сайтов с предложениями аренды: Padmapper, LiveLovely, Craigslist.

Однако все они не имели онлайн-ленты, в которой бы объявления появлялись по мере их добавления арендодателями, и не предлагали сортировки по необходимым критериям — например, транспортная доступность и район. Помимо этого, многие объявления изначально появлялись на Craigslist, после чего дублировались на других сайтах.

Разработчик решил автоматизировать процесс и составил требования к предполагаемому механизму поиска:

  1. получать уведомления в реальном времени как только объявление появляется на Craigslist;
  2. фильтровать объявления по районам;
  3. фильтровать объявления по транспортной доступности;
  4. сравнивать объявления;
  5. иметь возможность сразу связаться с арендодателем.

В результате Паручури приступил к разработке алгоритм для поиска, который будет:

  1. отслеживать новые публикации на Craigslist;
  2. проверять публикацию на соответствие необходимым критериям;
  3. отправлять сообщение в Slack со списком доступных апартаментов.

Сервис Craiglist не имеет собственного API, поэтому разработчик использовал скрипт, который отслеживал новый контент на страницах сервиса и формировал из него записи в таблицу: дата добавления, координаты местоположения, наличие изображения, название, стоимость и URL.

Затем разработанный Паручури скрипт проверял запись на соответствие критериям поиска. Например, разработчик со своей девушкой сформировали список районов, наиболее пригодных для жизни и отметили их на карте в сервисе BoundingBox. Таким образом они получили GPS-координаты, которые и сравнивали с GPS-коордианатами апартаментов на Craigslist.

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

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

Полученный результат отправлялся в виде сообщения через Slack-бота. Каждое сообщение содержало название места расположения апартаментов, стоимость аренды, расстояние до ближайшей остановки транспорта и название объявления со ссылкой:

fb76c9d1144ff0

«В результате мы арендовали отличные апартаменты, стоимость которых была выше той, что мы планировали, однако ниже того, что предлагает рынок жилья в Сан-Франциско» – сообщает Паручури.

В своём блоге разработчик подробно описал процесс создания бота. Весь код Паручури опубликовал на Github.

Вот так какой-то программистишко разрушил бизнес агентов по недвижимости. Если так дальше пойдет – нас всех заменят на ботов.

PS. Слишком высокая стоимость жилья в Сан-Франциско заставляет сотрудников, начинающих свою карьеру в компаниях Кремниевой долины, искать альтернативные варианты для аренды. Например, некоторые разработчики адаптируют грузовики и микроавтобусы для жизни на парковке рядом с офисом.

Настоящий материал самостоятельно опубликован в нашем сообществе пользователем Postman на основании действующей редакции Пользовательского Соглашения. Если вы считаете, что такая публикация нарушает ваши авторские и/или смежные права, вам необходимо сообщить об этом администрации сайта на EMAIL abuse@newru.org с указанием адреса (URL) страницы, содержащей спорный материал. Нарушение будет в кратчайшие сроки устранено, виновные наказаны.

Читайте также:

7 Комментарий
старые
новые
Встроенные Обратные Связи
Все комментарии
Slonik
Slonik
7 лет назад

Кхе-кхе, ну, написал он парсер или что-там (сорьки, я не айтишник). Дык, слыхал, некоторые прогеры, пишут подобные, просто, чтобы прон сортировать и скачивать, не заморачиваясь. И тут, вполне себе тривиальная задачка. Алгоритм не ахти какой. Или Автор подводил именно к последнему абзацу? Дык, нафига так подробно? Сопсна, двух абзацев бы и хватило.

Впрочем, дареному коню… ну, все в курсе. Лучше так, чем никак.)))

Proper
Proper
Администратор
для  Slonik
7 лет назад

Ну почему же. Показан вполне разумный бот, построенный на логичных критериях отбора. Собственно, человек-агент по подбору недвиги сделает эту работу куда хуже – и это означает, что человек скоро лишится работы. Тривиальщину будут делать боты, а на нетривиальщину у 90% человечества не хватит мозгов.

И куда девать лишних людей?

Slonik
Slonik
для  Proper
7 лет назад

Траншеи копать. Страдать гедонизмом. Мучиться, даже. Последнее мне больше нравится – я готов страдать за дело. А умные пущай руководят и придумывают. На то им и ум. Это же не их, как правило, заслуга – природа распорядилась. Вот и нехай пользуются на общее благо. Здорово я придумал? Сам! бгггг
Кстати, а сайтом что было? Нам интересненько. Либероиды атаковали? Нашу прелесть…)))

Proper
Proper
Администратор
для  Slonik
7 лет назад

Там даже хостер в офигении.

Slonik
Slonik
для  Proper
7 лет назад

не известный науке феномен? лана, буду считать, что из-за пятен на солнце))

Proper
Proper
Администратор
для  Slonik
7 лет назад

Ну, мы приняли некоторые превентивные меры – посмотрим, как будет дальше. Если снова будет такое же – мы знаем, куда посмотреть.

Slonik
Slonik
для  Proper
7 лет назад

Куда? /шёпотом/ в Белый дом?)))

Чтобы добавить комментарий, надо залогиниться.