Автоматическая загрузка объявлений, XML. Двойная выгрузка XML Яндекс Недвижимость Автоматическая выгрузка объявлений

Вы агентство недвижимости или агент и у вас много объявлений?

Предлагаем стать нашим партнером.

XML формат Русской недвижимости - RRL

RRL - формат RussianRealty для выгрузки предложений о недвижимости. Он совместим c форматом Яндекс.Недвижимости - YRL, но обладает более широкими возможностями для описания предложения и объекта.

Основные отличия - возможность передавать точный адрес (вместо тега address используются street и house), возможность точно описать параметры предложения (кол-во собственников, право собственности, дата вступления в право собственности и т. п.), передавать информацию о долях, и др.

Хотя мы можем импортировать формат Яндекса, из-за неточной природы описания адреса в формате YRL, увеличивается количество ваших объявлений, которые не могут пройти автоматическую проверку.

Портал принимает объявления о продаже и аренде (длительной и посуточной) жилой/городской и загородной неджвижимости - квартир, комнат, домов (дач, коттеджей) и участков в России.

Внимание! В простых (не премиальных) объявлениях вы можете поставить не более 7 фото к объекту.

* в платных премиум объявлениях ограничений по приему фото к объекту нет.

К отчету прикладываются логи ошибок и список добавленных объявлений. Есть вариант передачи логов в XML или CSV формате.

По вопросам выгрузки объявлений пишите на .

Другие форматы выгрузки объявлений

Если у вас есть готовая выгрузка объявлений в другом формате (cian, gdeetodom, eip, irr, winner, и т. п.), - мы сможем подключить выгрузку через конвертер.

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

Условия выгрузки объявлений

Партнерство с RussianRealty дает вам возможность увеличить количество звонков от потенциальных клиентов.

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

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

Не допускается передача объявлений о несуществующих объектах или объявлений с недостоверными данными.

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

XML-файл не должен содержать ошибок, а набор передаваемых данных об объекте должен содержать всю минимально необходимую информацию.

Объекты с одинаковыми контактными данными, по одному адресу и с близкими параметрами объекта и предложения могут быть распознаны как дубли. Из дублей на портале будет показано только одно, самое свежее объявление.

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

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

Объявления, которые не обновлялись более 30 дней (о продаже) и 7 дней (об аренде), автоматически снимаются с показов.

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

Мы будем рады помочь подготовить выгрузку и разобраться со всеми вопросами.

По вопросам о выгрузке объявлений пишите на .

Фид с объявлениями для Яндекс.Недвижимости составляется на языке YRL (Yandex Realty Language), разработанном в Яндексе.

YRL основан на стандарте XML (Extensible Markup Language). Как и XML, YRL не позволяет использовать первые 32 ASCII-символа в текстовых полях (исключения - табуляция, перевод строки, возврат каретки). Также стандарт строго требует кодировать в тексте следующие символы:

Код для YRL-файла
\" "
& &
> >
<
" "
Символ, который нужно заменить Код для YRL-файла
\" "
& &
> >
<
" "

Кодировка

Кодировка файла - UTF-8.

Заголовок документа

YRL-документ должен начинаться со стандартного XML-заголовка с нулевого символа первой строки.

Корневой элемент

Корневой элемент YRL-фида (realty-feed) должен содержать элемент generation-date с датой создания фида и элементы offer , в каждом из которых должна находиться информация из одного объявления. Чтобы указать пространство имен в XML, используйте атрибут xmlns=\"http://webmaster..

\n2010-10-05T16:36:00+04:00\n \n ... \n \n ... \n Формат даты

Все даты и время следует указывать согласно стандарту ISO 8601 . В общем случае - в формате YYYY-MM-DDTHH:mm:ss+00:00, где:

    MM - месяц;

  • mm - минута;

    ss - секунда;

    00:00 - указание часового пояса (для Москвы - +03:00).

Требования к объявлениям в фиде

    Фид с объявлениями необходимо разместить на своем домене и предоставить в виде URL-ссылки.

    Структура фида должна соответствовать формату YRL.

    Фид должен содержать только валидные объявления. Валидным считается объявление, для которого все поля фида заполнены согласно формату YRL.

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

    Если в объявлении есть несколько значений одного параметра (например, несколько фотографий), используйте несколько одинаковых тегов.

    Каждое объявление должно быть посвящено одному объекту недвижимости.

    В фиде должно быть не менее 20% уникальных объявлений.

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

    Чтобы добавить новую информацию в объявление, необходимо обновить существующее объявление, но не удалять и не дублировать его. Обновленное объявление должно иметь тот же internal-id .

    В текстах объявлений и в описании характеристик объектов не должно быть HTML-кода.

    Срок публикации ограничен для разных типов объявлений.

    Тип объявления Условия по срокам

    О продаже комнаты

    Обновлено не ранее чем 45 дней назад

    О длительной аренде квартиры

    О длительной аренде комнаты

    О длительной аренде дома

    Создано не ранее чем 90 дней назад

    Обновлено не ранее чем 45 дней назад

    О длительной аренде гаража

    Создано не ранее чем 30 дней назад

    Обновлено не ранее чем 30 дней назад

    Тип объявления Условия по срокам

    О продаже квартиры на вторичном рынке

    Создано не ранее чем 90 дней назад

    Обновлено не ранее чем 45 дней назад

    О продаже комнаты

    Создано не ранее чем 120 дней назад

    Обновлено не ранее чем 45 дней назад

    О длительной аренде квартиры

    Создано не ранее чем 7 дней назад

    Обновлено не ранее чем 14 дней назад

    О длительной аренде комнаты

    Создано не ранее чем 25 дней назад

    Обновлено не ранее чем 24 дня назад

    О длительной аренде дома

    Создано не ранее чем 30 дней назад

    Обновлено не ранее чем 30 дней назад

    О продаже гаража или машиноместа

    Создано не ранее чем 90 дней назад

    Обновлено не ранее чем 45 дней назад

    О длительной аренде гаража

    Создано не ранее чем 30 дней назад

    Обновлено не ранее чем 30 дней назад

    О посуточной аренде гаражей, а также о продаже и посуточной аренде домов, участков и квартир в новостройках

    Даты создания и обновления не влияют на валидность объявления

  • Фид должен содержать актуальные объявления. Актуальным считается объявление, содержащее достоверную информацию о реальном объекте, который можно купить или арендовать.

    Актуальными должны быть не менее.

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

Преимущество нашей автоматической загрузки

Бесплатно

Подключение и регулярная загрузка объявлений полностью бесплатна.

Без ограничений

Нет ограничений на количество объявлений. Важно только, чтобы объявления были реальными и актуальными.

Скорость подключения

Наш сервис принимает уже готовые (самые популярные) форматы xml-выгрузки: Яндекс.Маркет, Яндекс.Недвижимость, Afy.ru, сайт.Объявления.

Дополнительное продвижение
(по желанию)

Отображение (ретрансляция) объявлений на большинство популярных сервисов таких как «Яндекс недвижимость» и др. (скоро )

Принцип работы

Вы формируете XML-файл с необходимыми для загрузки объектами. Мы 1 раз в сутки проверяем этот файл и синхронизируем его с вашими объявлениями у нас на сайте.
. Если в XML-файле встречается новое объявление, то оно загружается к нам на сайт.
. Если объявление уже опубликовано у нас на сайте, то происходит его обновление.
. Если ранее загруженный объект отсутствует в XML-файле, или дата обновления объекта старше 3-х дней, то объявление помечается как неактуальное и через 3 дня перемещается в архив.

Принимаемые форматы

В настоящее время мы принимаем загрузку в следующих форматах:

  1. - для предложений о товарах и недвижимости;
  2. Яндекс.Недвижимость - специализированный фид о недвижимости, с возможной ретрансляцией на сайты партнеров.
  3. Afy.ru.Недвижимость - специализированный фид о недвижимости.
  4. Яндекс.Маркет - популярный формат для интернет-магазинов.

Подключить импорт объявлений по xml

Для заполнения формы, необходимо авторизоваться на сайте.

Поля, помеченные (* ) являются обязательными для заполнения.

Партнерство: мы будем признательны, если вы разместите нашу на своем сайте и пришлете адрес этой страницы нам вместе с заявкой на размещение фида. Это обязательное условие!

Ответы на частые вопросы

Что такое XML выгрузка и зачем мне выгружать объекты на ваш сайт?

XML-feed (или XML-фид) - это база ваших товаров, выгруженная в формате XML. Автоматическая выгрузка данных(XML-выгрузка объявлений) экономит время специалистов по продажам на рутинную работу по добавлению и редактированию информации в объявлениях.

Как работает пакетная выгрузка объявлений?

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

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

Могу ли я разместить несколько пакетных выгрузок по разным типам объявлений?

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

Чем отличается xml-файл сайт.Недвижимость от фида Яндекс.Недвижимости?

Формат сайт.Недвижимость расширяет и дополняет формат Яндекс.Недвижимости.

Поэтому любая валидная выгрузка в формате Яндекс..

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

Автоматически выгружать объявления могут только юридические лица?

Мы принимаем xml-фиды по различным товарам от:

  • Интернет-магазинов
  • Частных продавцов
  • Порталов, досок и CRM-систем
  • Других физических и юридических лиц, у которых автоматически формируется xml-файл с выгрузкой товаров.

Какова цена(стоимость) пакетной выгрузки на ваш сайт?

Стандартное подключение и обслуживание пакетной выгрузки объявлений (без ограничений количества) абсолютно бесплатно. Единственное, мы просим разместить на своем сайте новость о начале нашего сотрудничества, а также размещение информации в разделе "Партнеры", если есть соответствующие разделы.

Бесплатная возможность пакетно выгружать объекты на нашем проекте будет всегда. При этом мы сейчас работаем над премиальными тарифами для более эффективного продвижения ваших объектов на нашем сайте. Как только такой тип услуг будет готов, мы обязательно информируем вас о возможностях.

Как сделать xml-фид и пакетно выгружать объекты?

Если ранее вы не встречались с понятием фид и не представляете, как это сделать технически, вам необходимо обратится к разработчикам вашего сайта, базы или CRM, чтобы они модифицировали функционал программного обеспечения, который будет регулярно формировать xml-фид c постоянной ссылкой в одном из вышеуказанных форматов.

Профессиональным участникам рынка коммерческой недвижимости Москвы и всех регионов России доступен быстрый и удобный способ размещения на сайт – отправка информации об объектах через XML-выгрузку. Это избавит Вас от необходимости добавления каждого объявления вручную через и даёт возможность ежедневного обновления и поднятия ваших объявлений выше в тематическом разделе.

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

Обратите внимание : при подготовке XML-файла, помимо нижеприведённых технических требований, необходимо соблюдать .

URL-адрес XML документа должен быть постоянным и доступным по протоколу HTTP. Максимальное время установления соединения и ожидания ответа от сервера, на котором расположен XML документ — 30 секунд.

Пожалуйста, подождите, идёт загрузка. В зависимости от размера документа, его обработка может занимать 5-10 минут.

× Добавить

Технические требования

Общие требования

Максимальное количество объектов в одном документе — 300 штук. Использование HTML-тегов в описании объектов запрещено. Все числовые значения не должны содержать десятичных знаков, точек и запятых, только целые числа (кроме значений географических координат объекта).

Заголовок документа

XML-документ должен начинаться с первой строки, с нулевого символа и содержать стандартный XML-заголовок. Допускается использование только кодировки UTF-8.

Корневой элемент

Корневой элемент документа должен содержать объекты вашей выгрузки сгруппированные в элементы .
Перед первым элементом с описанием объекта зарегистрированные пользователи сайта могут указать свой логин (e-mail адрес указанный при регистрации) в теге , атрибут email . Этот e-mail адрес используется для идентификации вас (как владельца) с объектами вашей выгрузки и не будет публиковаться на страницах выгружаемых объектов.

... ...

Описание выгружаемых объектов

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

Элемент Описание
id уникальный для каждого объявления идентификатор (число, может быть одинаковым для нескольких объектов, при условии что объекты будут относится к разному типу сделки )
contract_type

Тип сделки

Возможные значения: 1 - аренда, 2 - продажа

commerce_type

Тип объекта

Значение из справочника: типы объектов

address

Адрес объекта

Атрибуты:

admin_area Числовой идентификатор административной области
Значение из справочника: административные области
locality Название населенного пункта или города (названия городов указываются без приставки «город» или «г.», названия населённых пунктов указываются включая район и его тип). Пример: Москва ; Дзержинский район , поселок Суздальский .
street Название улицы населенного пункта или города (включая тип улицы, допускаются сокращения). Пример: Озерная аллея ; ул. Строителей .
house_str Номер дома
lon Географические координаты (долгота)
lat Географические координаты (широта)
Географические координаты используются для определения местоположения объекта на карте. Значения координат должны содержать только числа с дробной частью, разделитель — точка. Если долгота и широта не указаны, то координаты объекта будут определены автоматически по указанному адресу.
metro

Числовой идентификатор станции метро (для Москвы и Санкт-Петербурга)

Атрибуты:

price

Цена объекта (число). Для объектов с типом Аренда указывается цена аренды квадратного метра объекта в год. Для объектов с типом Продажа — цена продажи всего объекта. В качестве исключения допускается не указывать цену объекта (в случае, если цена данного объекта является конфиденциальной информацией).

Атрибуты:

square Площадь объекта (число) в м 2
description Описание объекта (символьные данные, максимальная длина 1000 символов). Текст описания объекта не должен быть написан ЗАГЛАВНЫМИ буквами. Не допускается указание контактной информации в описании объекта. Текст описания должен быть помещён внутрь конструкции CDATA. Пример:
photo Список URL-адресов с фотографиями объекта в порядке их отображения (первое фото будет использоваться в списке объектов в соответствующем разделе, все последующие — на странице объекта). Возможно указание нескольких тегов (до 10). URL-адреса фотографий должны быть доступны по протоколу HTTP и иметь расширения jpg или png. На фото не должно быть каких-либо посторонних изображений (водяных знаков, логотипов и др.). Рекомендуемый размер изображений — 900x600 px, максимальный — 1200x800 px, минимальный — 570x380 px (изображения меньше максимального или больше максимального размера не будут загружены). В рамках одного объявления дубли изображений не принимаются. Как исключение, допускается публикация объектов без фото, но не более 10% от общего количества.
contacts

В 18.09.2017 в 02:32, abushyk сказал:

A. Распаралеливаем.

Суть распаралеливания состоит в том, что бы сообщить модулю, что мы хотим выгрузить. В штатном режиме он просто получает пинок по соотв. адресу и на основании настроек (чекбоксы отбора, органичения по времени...) делает выборку и выгружает полученное. С версии 1.5.12 в модуль добавился функционал, позволяющий принудительно сообщить приложению набор идешек, которые следует выгрузить.

Делается это следующим образом. В main.php шаблона внутри функции main() мы создаем некий адрес нашей выгрузки - например /export/yandex.common/

if(!$has_result && $REQUESTURIPATH=="export/yandex.common"){ }

По обращению на этот адрес мойсайт/export/yandex.common будет происходить нечто в результате чего на выходе будет xml-фид.

Далее мы должны собрать коллекцию выгружаемых ID объектов. Каким образом мы это сделаем - не важно (хоть впишем руками, хоть выберем из БД по какому-то запросу). Скорее всего мы будем выбирать их запросами по критерию.

/*Собираем коллекцию*/ ; $stmt = $DBC -> query ($query ); if ($stmt ){ while ($ar = $DBC -> fetch ($stmt )){ $ids_collection = $ar [ "id" ]; } } }

В данном примере мы определили к выдаче все объекты со страной с ИД=2 и являющиеся активными (active=1) (Это условие добавлено специально, так как если вы управляете набором выгружаемых, то выгрузчик доверяет вам и уже не налагает проверок поверх выбранного вами не по активности, ни по дате, ни по признаку-чекбоксу, как он это делает в штатном режиме. Это требует от вас чуть больше внимательности при сборке коллекции, но зато оставляет большую гибкость в плане возможности подбора). Условия могут быть более произвольными. Запросов может быть несколько или один с использованием UNION. Главное что бы в конце мы наполнили коллекцию $ids_collection набором выгружаемых ID объектов. Формально мы можем хоть в ручную регулировать результат, вплоть до

if (! $has_result && $REQUESTURIPATH == "export/yandex.common" ){ $ids_collection = array (1 , 3 , 54 ); }

Это маргинально, но допустимо.

Когда идешки собраны, мы можем сообщать их в приложение. Иными словами мы должны вызвать модуль выгрузки и дать ему список ID.

Для этого предназначена функция yandexrealty_admin::setExportedIds()

Осталось определить в какую часть модуля передать эти данные. Яндекс-выгрузка имеет два подмодуля admin и site. Они работают почти одинаково. Самый просто вариант определить какой модуль работает в вашем случае:

1. открываем адрес вашей обычной выгрузки
2. по фтп открываем файл /apps/yandexrealty/admin/admin.php
3. находим в нем строку public function export(){
4. сразу после этой строки добавляем строку echo 1;
5. сохраняем и перегружаем страницу с выгрузкой.
6. сли вместо привычного фида мы получим страницу с ошибкой, значит у нас работает подмодуль admin
7. откатываем пункт 4
если ошибку мы не получили, то работает модуль siteТеперь в нашем перехватчике выгрузки добавим нужные включения

if (! $has_result && $REQUESTURIPATH == "export/yandex.common" ){ $ids_collection = array (); /*Собираем коллекцию*/ $DBC = DBC :: getInstance (); $query = "SELECT id FROM " . DB_PREFIX . "_data WHERE country_id=2 AND active=1" ; $stmt = $DBC -> query ($query ); if ($stmt ){ while ($ar = $DBC -> fetch ($stmt )){ $ids_collection = $ar [ "id" ]; } } . ; require_once SITEBILL_DOCUMENT_ROOT . ; $YRE = new yandexrealty_site (); /*ЕСЛИ МЫ ПОНЯЛИ ЧТО РАБОТАЕТ ADMIN-ПОДМОДУЛЬ*/ require_once SITEBILL_DOCUMENT_ROOT . "/apps/yandexrealty/admin/admin.php" ; $YRE = new yandexrealty_admin (); /*---КОНЕЦ---ЕСЛИ МЫ ПОНЯЛИ ЧТО РАБОТАЕТ ADMIN-ПОДМОДУЛЬ*/ /*ПЕРЕДАЕМ ID В ВЫГРУЗЧИК*/ $YRE -> setExportedIds ($ids_collection ); /*ЗАПУСКАЕМ ВЫГРУЗКУ*/ header ("Content-Type: text/xml" ); echo $YRE -> run_export (); exit (); }

Получив нужные ID выгрузчик просто прогонит их через валидацию и создаст фид. Кеширование выгрузки следует отключить, если вы создаете такие отдельные точки доступа.

Б. Для тех, кто активно перепиливал свои модули в папке apps

Вам понадобится стянуть свежую версию приложения и взять из ее файла admin.php недостающие функции setExportedIds($ids) и измененную collectData(). Если ві меняете путем - запомнил свои правки, обновил, добавил опять свои правки, то будет чуть проще - основные изменения были именно в функциисбора данных - collectData, а ее обычно не меняют.

В. Для тех, у кого есть локализация приложения в папке шаблона

В папке шаблона обычно локализуется site-подмодуль приложения. Поэтому для распараллеливания вам скорее всего придется подключать именно блок

/*ЕСЛИ МЫ ПОНЯЛИ ЧТО РАБОТАЕТ SITE-ПОДМОДУЛЬ*/ require_once SITEBILL_DOCUMENT_ROOT . "/apps/yandexrealty/admin/admin.php" ; require_once SITEBILL_DOCUMENT_ROOT . "/apps/yandexrealty/site/site.php" ; require_once SITEBILL_DOCUMENT_ROOT . "/template/frontend/" . $this -> getConfigValue ("theme" ). "/apps/yandexrealty/site/local_site.php" ; $YRE = new local_yandexrealty_site (); /*---КОНЕЦ---ЕСЛИ МЫ ПОНЯЛИ ЧТО РАБОТАЕТ SITE-ПОДМОДУЛЬ*/

Все отличие, что мы дополнительно подключаем локализированную часть из папки шаблона и работает с локальным local_yandexrealty_site вместо стандартного yandexrealty_site

ПС. Я скорее всего не охватил всего, так что кто будет делать эксперименты с этим пишите сюда и в ПП свои вопросы.

если мы правильно вас поняли это распаралеливание можно сделать по каждому пользователю? учитывая его user_id ?
но получается если пользователь попросит создать ему фид то придется лезть в файл и код и ручками опять шаманить, что может привести к всеобщему сбою поскольку можно где то что то подзабыть поставить например точку запятую кавычки и так далее?

А нельзя ли например чтобы исключить случайные ошибки сделать в фтп папке файл и назвать его например user-fid и вот в нем уже делать что то и он будет по названию файла привязываться например к определенному юзеру
например
делаем файл user-fid44 и потом во всем файле просто меняем пользовательский айди на 44 и все.

Яндекс Браузер