Проход по ссылкам навигации

Данный документ содержит описание протокола работы информационной системы «Навигатор» в части загрузки информации из различных источников данных. Его цель — сформулировать основные правила загрузки информации в базу данных «Навигатор» и тем самым обеспечить прозрачность этого процесса для участников рынка недвижимости.

Объявления, публикуемые в «Навигаторе», попадают туда по следующим каналам

  1. Сам «Навигатор» (объявления, публикуемые пользователями в «Навигаторе»).
  2. Агентства, отправляющие свои объявления в «Навигатор» в пакетном режиме:
    1. Агентства, входящие в Московскую Ассоциацию Риэлторов.
    2. Остальные агентства.
  3. Периодические издания.
  4. Интернет порталы, аккумулирующие объявления разными способами, и предоставляющие их «Навигатору».

    Особенности источников информации, поступившей по каналу 2.1.

    1. По результатам обработки информации, поступившей по каналу 2.1, «Навигатор» формирует LOG-файл результатов загрузки пакета с описанием ошибок.
    2. В случае, если информационный пакетный файл не обновлялся более 5 рабочих дней, объявления соответствующего Агентства начинают формироваться по стандартному протоколу.

Процесс загрузки информации в базу данных включает в себя следующие этапы

  1. Предварительная обработка информации.
    1. Особенности, связанные с каналом 2.1:
      объявления, поступившие по каналу 2.1 от соответствующих агентств перестают попадать в базу из других источников информации. Для этой цели происходит фильтрация и удаление информации других источников, где встречается хотя бы один телефон, встречающийся в пакетном файле канала 2.1.
  2. Распознавание значений полей перечислимых типов.
  3. Контроль значений других полей.
  4. Решение вопроса: является ли данное объявление новым, или же оно уже загружалось ранее?
  5. Добавление новых объявлений.
  6. Коррекция параметров уже существующих объявлений, формирование истории публикаций.
  7. Определение объявлений, подлежащих удалению.

Далее эти этапы рассматриваются более подробно.

  1. Предварительная обработка информации

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

    1. тип сделки (для загородной и коммерческой недвижимости);
    2. тип рекламируемого объекта;
    3. географическое местоположение (Метро/Район/Населенный пункт);
    4. контактные данные.

  2. Распознавание значений полей перечислимых типов

    В «Навигаторе» используется ряд полей перечислимых (индексированных) типов. Например, станции метро, населенные пункты, улицы, информация о наличии лифта, телефона, балкона, типы реализуемых объектов, и т.д. В загружаемых данных значения этих полей могут не совпадать с используемыми в «Навигаторе». В процессе распознавания осуществляется выбор наиболее близких значений полей из списка возможных. При этом действуют следующие правила.

    Cписок перечислимых полей для трех разделов базы данных с указанием их возможных значений

    1. Местоположение объекта (метро, населенный пункт, улица)

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

    2. Компания–автор объявления

      Перечислимое поле. Возможные варианты определены списком компаний, работающих на рынке недвижимости Москвы и Московской области. В случае, если Компания–автор объявления не указана в первоисточнике явно, она может быть доопределена, если хотя бы один из контактных телефонов объявления совпал со списком контактных телефонов Компании.

    3. Перечислимые поля в разделе «Квартиры, комнаты, доли в квартирах» (в скобках указан вариант отражения значения параметра в базе «Навигатор»)

      1. Тип объекта недвижимости

        Возможные значения: квартира (кв), комната (км), доля (д).

      2. Расстояние до метро или МКАД (для подмосковной недвижимости)

        Возможные значения: параметр не определен (?), не более 2 минут пешком (2п), от 2 до 5 минут пешком (5п), от 5 до 10 минут пешком (10п), от 10 до 15 минут пешком (15п), от 15 минут пешком до 5 минут транспортом (5т), от 5 до 10 минут транспортом (10т), от 10 до 15 минут транспортом (15т), более 15 минут транспортом (>15т). Кроме того расстояние может быть указано в километрах. Эти значения используются, как правило, для подмосковной недвижимости для характеристики расстояния до МКАД. Возможные значения параметра: 5 км, 10 км, 15 км и т.д. до 200 км через каждые 5 км, а также значения 220 км и более 220 км. Невозможность выбора одного из перечисленных значений оставляет параметр неопределенным.

      3. Тип балкона

        Возможные значения: параметр не определен (?), балкон отсутствует (–), балкон (Б), лоджия (Л), эркер (Э), два балкона (2Б), две лоджии (2Л), балкон+лоджия (БЛ), более 2 балконов (>2Б)

      4. Тип дома

        Возможные значения: параметр не определен («»), «хрущевка» (Х), панельный (П), блочный (Б), сталинский (С), кирпичный (К), монолитный (М), монолитно–кирпичный (МК), элитный (Э).

      5. Тип санузла

        Возможные значения: параметр не определен (?), санузел совмещенный (с), санузел раздельный (р), два санузла (2).

      6. Наличие телефона

        Возможные значения: параметр не определен (?), телефона нет (–), телефон есть (Т), два телефона (2Т).

      7. Наличие лифта

        Возможные значения: параметр не определен (?), лифт есть (л), лифта нет (–). Для домов с этажностью более 6, поле «наличие лифта» автоматически автоматически приобретает значение «лифт есть».

      8. Статус квартиры

        Возможные варианты: параметр не определен (?), квартира свободна (св), требуется альтернатива (алт). В случае, если статус квартиры не указан в первоисточнике явно, он может быть доопределен на основании анализа текстового поля Комментарий.

      9. Статус строения

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

      10. Использование ипотеки

        Возможные варианты: статус неопределен, ипотека возможна.

    4. Перечислимые поля в разделе «Загородная недвижимость»

      1. Тип сделки

        Возможные значения: продажа загородной недвижимости (П), аренда загородной недвижимости (А).

      2. Тип объекта недвижимости

        Возможные варианты: таун-хауз, коттедж, дача, участок, дом, полдома, часть дома, сруб, хозблок, недостой.

      3. Направление

        Возможные значения: Рязанское, Павелецкое, Савеловское, Ярославское, Белорусское, Горьковское, Казанское, Киевское, Рижское, Курское, Санкт-Петербургское. Если в исходных данных направление не определено, то оно выбирается по названию шоссе или населенного пункта.

      4. Шоссе

        Возможные значения: Алтуфьевское, Боровское, Варшавское, Волоколамское, Горьковское, Дмитровское, Егорьевское, Ильинское, Калужское, Каширское, Киевское, Куркинское, Ленинградское, Международное, Минское, Можайское, Новорижское, Новорязанское, Новосходненское, Носовихинское, Осташковское, Пятницкое, Рогачевское, Рублево-Успенское, Рублевское, Рязанское, Симферопольское, Сколковское, Старокалужское, Шереметьевское, Щелковское, Ярославское. Если шоссе не указано в исходных данных, то выбирается ближайшее к указанному населенному пункту.

      5. Наличие электричества

        Возможные варианты: параметр не определен, электричество есть (Э), электричество отсутствует (–).

      6. Наличие водопровода

        Возможные варианты: параметр не определен, водопровод есть (В), водопровод отсутствует (–).

      7. Наличие газа

        Возможные варианты: параметр не определен, газ есть (Г), газ отсутствует (–).

      8. Наличие охраны

        Возможные варианты: параметр не определен, охрана есть (О), охрана отсутствует (–).

    5. Перечислимые поля в разделе «Коммерческая недвижимость»

      1. Тип сделки

        Возможные значения: продажа (П), аренда (А), продажа прав аренды (ППА)

      2. Тип объекта недвижимости

        Возможные варианты: отдельно стоящее здание, административное здание, бизнес-центр, офис, магазин, магазин (продовольственный), магазин (промтоварный), склад, гараж, помещение свободного назначения, помещение (специальное), помещение (кроме производства), помещение производственное, павильон, стройматериалы, земельный участок, гостиница, кафе, ресторан, общепит, автосервис, АЗС, автозапчасти, автостоянка, медицинский центр, аптека, фитнесс-центр, банк, обменный пункт, развлекательный центр, салон красоты, спорт-объект, сауна, игровые автоматы.

      3. Этаж

        Возможные значения: параметр неопределен, подвал, полуподвал, целое положительное число, соответствующее этажу.

      4. Ремонт

        Возможные значения: параметр неопределен, требуется ремонт (тр), хорошее состояние (р), евроремонт (ер).

      5. Наличие телефонных линий

        Возможные значения: : параметр неопределен (?), телефонные линии есть (Т), телефонных линий нет(–).

      6. Наличие отдельного входа

        Возможные значения: параметр неопределен (?), отдельный вход есть, отдельного входа нет(–).

  3. Контроль значений других полей

    1. Другие поля в разделе «Квартиры, комнаты, доли в квартирах»

      1. Число комнат

        Возможные значения: для квартир — целое число от 1 до 30; для комнат — дробное число, где числитель и знаменатель показывают число продаваемых комнат и сколько всего комнат в квартире, для долей – дробное число, характеризующее размер реализуемой доли квартиры. Для квартир данный параметр должен быть определен всегда, для комнат и долей может оставаться неопределенным (в этом случае в базе будет отражен сам факт реализации комнаты или доли).

      2. Цена квартиры

        Цена указывается в рублях, либо в первоисточнике определяется валюта цены. Размер цены сравнивается с диапазоном цен на недвижимость в данном регионе, определяемый с помощью постоянного автоматического мониторинга. Если значение выходит за границы допустимого диапазона (будет в 10 раз больше или в 4 раза меньше средней цены квадратного метра), оно обнуляется. Исключение в процедуре проверки правильности цены составляют объявления, поступившим в базу по каналам 1 и 2.1.

      3. Этаж, этажность

        Целочисленные поля, имеющие следующие ограничения: этаж не может быть более этажности, этажность не может превышать значение 120. Если значения выходят за границы диапазона, они обнуляются.

      4. Общая площадь, жилая площадь, площадь кухни

        Числовые параметры, имеющие следующие ограничения: общая площадь должна быть не меньше, чем число комнат в квартире, умноженное на 12 и не больше числа комнат в квартире, умноженное на 120. Жилая площадь не должна превышать величину общей площади, площадь кухни должна быть не меньше 3 м2 и не более 50 м2. Если значение выходит за границы диапазона, то оно обнуляется. Исключения на проверку правильности цены имеют источники 1 и 2.1.

    2. Другие поля в разделе «Загородная недвижимость»

      1. Площадь участка

        В случае, если не указана единица измерения площади участка, предполагается, что она задана в сотках.

      2. Площадь строения

        Единица измерения — м2.

      3. Расстояние до МКАД

        Единица измерения — км.

    3. Другие поля в разделе «Коммерческая недвижимость»

      1. Минимальная и максимальная площади реализуемого объекта недвижимости

        В случае, если в первоисточнике не указан возможный диапазон площадей, в поле «площадь» будет отражено только одно число.

    4. Цена объекта

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

    5. Номер дома

      Текстовое поле. После процедуры распознавания данное поле по возможности преобразуется к стандартному виду.

    6. Коментарий

      Текстовое поле произвольной длины.

    7. Список контактных телефонов

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

    8. Дата появления

      Параметр, указывающий дату создания объявления в базе. Данный параметр никогда не меняется.

    9. Дата обновления объявления

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

  4. Решение вопроса: является ли данное объявление новым, или оно уже загружалось в «Навигатор»

    1. Для объявлений, имеющих собственные уникальные в пределах канала или пакета идентификаторы (объявления, поступающие по каналу 1, а также часть объявлений, поступающих по каналу 2 и 4), эти идентификаторы используются для поиска старых версий объявлений в базе данных «Навигатора». В процессе поиска используется составной идентификатор, включающий в себя помимо исходного простого идентификатора, идентификатор канала и пакета. Если старая версия объявления не найдена, оно считается новым.

    2. Для поиска старых версий объявлений, не имеющих собственных идентификаторов, сравниваются значения групп полей. А именно:

      1. Для раздела «квартиры, комнаты, доли в квартирах» анализируются следующие поля: тип объекта недвижимости, число комнат в квартире, географическое местоположение (метро/населенный пункт), площадь, этаж/этажность, адрес квартиры, цена, тип дома, санузел, контактные телефоны. Объявление считается старой версией полученного, если значения полей «тип объекта», «число комнат в квартире», «метро/населенный пункт», «компания-автор объявления» совпадают полностью, а остальные поля в совокупности имеют допустимую величину отклонения. Допустимая величина отклонения параметра — это такое отклонение, при которых два сравниваемых объявления будут считаться разными. Эта величина имеет следующие значения для следующих полей: общая площадь квартиры не должна отличаться более, чем на 7%, жилая более, чем на 20%, площадь кухни 10%, цена более, чем на 15%. Совпадение таких параметров, как улица, этаж, этажность в сравниваемых объявлениях должно быть 100%. Принятие итогового решения о том, является ли рассматриваемое объявление новым или старым, производится по совокупности отклонений по всем параметрам. На итоговое решение также оказывает влияние несовпадение значений таких полей, как «тип дома», «тип санузла», «номер дома», каждое из которых по отдельности не может повлиять на решение.
        Если старая версия полученного объявления не найдена, оно считается новым.
        Особенности сравнения:

        1. В случае, если в одном из сравниваемых объявлений тот или иной параметр не определен, отклонение по этому параметру не рассчитывается.
        2. Если «компания-автор объявления» не определена, считается, что пара объявлений принадлежит одному и тому же автору, если в них совпал хотя бы один из контактных телефонов.

      2. Для раздела «загородная недвижимость» анализируются следующие поля: тип сделки, тип объекта недвижимости, географическое местоположение, (в случае, если оно не определено, рассматриваются поля «направление» или «шоссе»), площадь участка, площадь строения, расстояние до МКАД, цена, контактные телефоны. Объявление считается старой версией полученного, если значения полей «тип сделки», «тип объекта недвижимости», «географическое местоположение», «компания-автор объявления» совпадают, а остальные поля в совокупности имеют допустимую величину отклонения. Допустимая величина отклонения по площади участка не должна превышать 15%, по площади дома — 20%, по расстоянию до МКАД — 25%, по цене — 15%.
        Особенности сравнения:

        1. Особенности сравнения, определенные в п.4.2.1
        2. Географическое местоположение считается совпавшим, если оба населенных пункта определены и совпали. В случае неопределенности населенного пункта хотя бы в одном из сравниваемых объявлений, географическое местоположение объекта в объявлениях считается совпавшим, если совпали названия шоссе, а расстояние до МКАД отличается не более, чем на 25%. Если не определены шоссе, то та же процедура производится с названиями направлений.

      3. Для раздела «коммерческая недвижимость» анализируются следующие поля: тип сделки, тип объекта недвижимости, географическое местоположение, площадь объекта, цена, контактные телефоны. Объявление считается старой версией полученного, если значения полей «тип сделки», «тип объекта недвижимости», «географическое местоположение», «улица», «этаж», «компания-автор объявления» совпадают, а остальные поля в совокупности имеют допустимую величину отклонения. Допустимая величина отклонения по площади объекта 15%, по цене — 20%.
        Особенности сравнения:

        1. Особенности сравнения, определенные в п.4.2.1
        2. Географическое местоположение считается совпавшим, если оба населенных пункта определены и совпали. В случае неопределенности населенного пункта хотя бы в одном из сравниваемых объявлений, географическое местоположение объекта в объявлениях считается совпавшим, если совпали названия шоссе, а расстояние до МКАД отличается не более, чем на 25%. Если не определены шоссе, то та же процедура производится с названиями направлений.

  5. Добавление новых объявлений

    Объявления с новыми, не встречающийся ранее, идентификаторами добавляются в базу. При этом фиксируется дата появления объявления.

  6. Коррекция параметров уже существующих объявлений, формирование истории публикаций

    1. Значения полей старых версий объявлений корректируются следующим образом:
      1. Поле «дата появления» остается неизменным.
      2. Старые значения остальных полей заменяются на новые, если новое значение определено.

    2. Для объявлений, поступающих в «Навигатор» по каналу 2.1 (от агентств, входящих в МАР), имеются следующие особенности изменения значений полей:
      1. Объявления публикуются в базе именно в том виде, включая нулевые поля и список контактных телефонов, как они прописаны в пакетном файле (накопления списка контактных телефонов и коррекция параметров по уже имеющейся в базе информации не происходит).

      2. В поле комментария добавляется внутренний идентификатор объявления, взятый из пакетного файла.

    3. Формирование истории Публикаций.
      Новые записи в историю публикации объявления добавляются в случае, если изменился источник публикации, или цена.

  7. Определение объявлений, подлежащих удалению

    1. Объявления, поступившие по каналу 1 (объявления, публикуемые пользователями в «Навигаторе») автоматически удаляются из базы, как только пользователь удалит его из списка своих эксклюзивных объявлений.

    2. Объявления поступающие в «Навигатор» по каналу 2.1 (от агентств, входящих в МАР) удаляются, если они не были обнаружены при обработке очередного пакетного файла.

    3. Объявления из остальных источников, переставшие публиковаться «стареют» естественным образом и удаляются из базы по дате последнего обновления. Пользователь базы может самостоятельно выбрать максимальный срок хранения объявлений.