Парсер формата MLS: различия между версиями
Abushyk (обсуждение | вклад) |
Abushyk (обсуждение | вклад) |
||
Строка 40: | Строка 40: | ||
Пример: | Пример: | ||
<pre> | <pre> | ||
− | http://somesite.ru/apps/mlsparser/ | + | http://somesite.ru/apps/mlsparser/photo.php?file=img_data_20140621 |
+ | или | ||
http://somesite.ru/apps/mlsparser/photo.php?file=img_data_20140621.zip | http://somesite.ru/apps/mlsparser/photo.php?file=img_data_20140621.zip | ||
</pre> | </pre> | ||
− | , где будет предпринята попытка | + | , где будет предпринята попытка загрузить всцществующие на сайте объявления соответствующие изображения из файла <pre>http://somesite.ru/cache/upl/img_data_20140621.zip</pre> |
− | + | По завершении импорта изображений, исходный файл с данными будет удален с сервера.<br /> |
Версия 20:47, 23 июня 2014
Приложение Парсер формата MLS предназначено для загрузки в сайт данных из XML, сформированных согласно требованиям MLS.
Загрузка данных осуществляется в два этапа:
1. Загрузка собственно данных.
2. Загрузка изображений.
Загрузка данных.
Загрузка данных происходит из XML файла. Предварительно, файл с данными должен быть помещен на сервер в папку, указанную в настройке apps.mlsparser.parser_root (Папка для загрузки файлов). Файл должен быть валидным документом XML и иметь расширение '.xml'. В имени файла могут содержаться цифры, латинские буквы и подчеркивание.
После этого может быть вызван парсер данных. Парсер вызывается GET-запросом по адресу http://сайт/apps/mlsparser/parser.php
Вместе с вызовом в переменной запроса file необходимо передать имя файла с данными (имя передается без расширения файла).
Пример:
http://somesite.ru/apps/mlsparser/parser.php?file=data_20140621
, где будет предпринята попытка распарсить и импортировать в сайт данные из файла
http://somesite.ru/cache/upl/data_20140621.xml
В случае физического существования файла, его соответствия формату XML и наличию в нем данных, данные из него будут импортированы в сайт. Исходный файл с данными будет удален с сервера.
Данные загружаются с учетом существования. Каждая запись из исходного файла будет сличена с уже существующими в сайте записями и, при наличии существующей аналогичной, будет произведено обновление записи. В противном случае - вставка.
Существование записей проверяется по ключу уникальности. Ключ уникальности - это строка состоящая из трех частей - значений полей uniq_id, internal_type_id и user_id соединенных подчеркиванием.
Например:
678_3_25
Соответствующие данные должны быть переданы с данными в XML загружаемого файла, либо указаны в настройках приложения.
Загрузка изображений.
Загрузка данных происходит из ZIP-архива. Предварительно, фотографии должен быть помещены на сервер в ZIP-архиве, указанную в настройке apps.mlsparser.parser_root (Папка для загрузки файлов). Архив должен быть одноуровневым, не содержать внутри вложенных папок, а только загружаемые изображения. Файл должен иметь расширение '.zip' и являться правильным архивом формата ZIP. В имени файла могут содержаться цифры, латинские буквы и подчеркивание.
Запуск загрузчика изображений производится GET-запросом по адресу http://сайт/apps/mlsparser/photo.php
Вместе с вызовом в переменной запроса file необходимо передать имя архива с изображениями (имя передается с или без расширения файла).
Пример:
http://somesite.ru/apps/mlsparser/photo.php?file=img_data_20140621 или http://somesite.ru/apps/mlsparser/photo.php?file=img_data_20140621.zip
, где будет предпринята попытка загрузить всцществующие на сайте объявления соответствующие изображения из файла
http://somesite.ru/cache/upl/img_data_20140621.zip
По завершении импорта изображений, исходный файл с данными будет удален с сервера.