Получение цен из карточек

мониторинг в реальном времени

1. Авторизация по ключу

Для передачи ключа, в запросе необходимо использовать HTTP заголовок с параметром Authorization. Authorization: Token xxxxxxxxxxxxxxxxxxxx

2. HTTP методы

POST - для создания таска GET - для получения информации

3. Создание таска

POST запрос по URL: https://apimarket.parserdata.ru/task/create/ В теле запроса необходимо передать город мониторинга и список товаров: 1. Город передается параметром region_ids (список городов), можно передать как один, так и несколько городов. 2. Товары передаются параметром site_product в массиве site_products. Возможна передача ID моделей или ссылок на модели с выбранными фильтрами на маркете, например цветом товара или другими выбранными параметрами в карточке товара на сайте.
Пример передачи товаров 1 Тело запроса с моделями товаров Яндекс Маркета, город мониторинга Москва: { "region_ids":[213], "site_products":[ {"site_product":"630030594"}, {"site_product":"650874000"}, {"site_product":"558171067"} ] }
Пример передачи товаров 2 Тело запроса с ссылками на модели Яндекс Маркета, город мониторинга Москва и Санкт-Петербург. Важно, в ссылке должен присутствовать параметр product и offers: { "region_ids":[213, 2], "site_products":[ {"site_product":"https://market.yandex.ru/product/630030594/offers?local-offers-first=1&how=aprice"}, {"site_product":"https://market.yandex.ru/product/650874000/offers?local-offers-first=1&how=aprice"}, {"site_product":"https://market.yandex.ru/product/558171067/offers?local-offers-first=1&how=aprice"} ] }
Пример передачи товаров 3 Для дополнительной идентификации переданных товаров, возможно передать внутренний код или любые другие дополнительные данные вместе с товаром в параметре custom_field_1 (доступно до 5 custom_field по каждому товару). { "region_ids":[213, 2], "site_products":[ {"site_product":"630030594","custom_field_1": "000001"}, {"site_product":"650874000", "custom_field_1": "000002", "custom_field_2": "акционный товар"}, {"site_product":"558171067"} ] }
Пример ответа на успешный запрос созданного таска: { "task_id": 123 } где 123, номер созданного таска

4. Проверка статуса таска

GET запрос по URL: https://apimarket.parserdata.ru/task/TASK_ID/products/?page=1 где TASK_ID, номер созданного таска Пример ответа, во время парсинга: { "count": 0, "next": null, "previous": null, "results": [ ], "status": "PARSING" }
Возможные статусы: SAVE_PRODUCTS – подготовка IN_PROGRESS – отправка PARSING – парсинг DONE – завершено

5. Получение результатов по таску

Проверку статуса у таска, рекомендуем проводить с задержкой в 1 секунду. При смене статуса на DONE, в теле ответа выводятся результаты, где: count – количество переданных идентификаторов или ссылок на Я.Маркет next – следующая страница с результатами (на одной странице 25 товаров) previous – предыдущая страница с результатами (если значение на странице null, вы находитесь на последней странице) results – массив с полученными данными status – статус задания
Пример ответа с данными после парсинга. Пример сокращен по количеству офферов для визуального удобства. В реальном ответе будут все офферы полученные на всех страницах по каждому товару: { "count": 6, "next": "https://apimarket.parserdata.ru/task/TASK_ID/products/?page=2", "previous": null, "results": [ { "site_product_id": 630030594, "site_product_url": "https://market.yandex.ru/product/630030594/offers?lr=213&how=aprice&good-state=new", "region_id": 213, "region_name": "Москва", "custom_fields": { "custom_field_1": "000001", "custom_field_2": null, "custom_field_3": null, "custom_field_4": null, "custom_field_5": null }, "offers": [{ "price": 12939.0, "price_discount": 12000.0, "price_promo": null, "price_card": null, "price_min": 12000.0, "promo": null, "shop_name": "www.Pleer.ru", "shop_id": 720, "delivery_cost": 188.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 13127.0, "offer_name": "Сотовый телефон Xiaomi Redmi Note 8T 4/64GB Starscape Blue", "model_id": "630030594", "url": "", "warranty": true, "on_stock": false, "cheapest": true, "premium": false, "cpa": false }, { "price": 15370.0, "price_discount": null, "price_promo": 15000.0, "price_card": null, "price_min": 15000.0, "promo": "МАРКЕТ", "shop_name": "i-Всё.ru", "shop_id": 25669, "delivery_cost": 0.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 15370.0, "offer_name": "Xiaomi Redmi Note 8T 4/64GB (Gray (Серый))", "model_id": "630030594", "url": "", "warranty": true, "on_stock": false, "cheapest": false, "premium": true, "cpa": false }, { "price": 15990.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 15990.0, "promo": null, "shop_name": "Kstore", "shop_id": 651224, "delivery_cost": 0.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 15990.0, "offer_name": "Смартфон Xiaomi Redmi Note 8T 4/64 Blue", "model_id": "630030594", "url": "", "warranty": false, "on_stock": false, "cheapest": false, "premium": false, "cpa": false }, { "price": 17836.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 17836.0, "promo": null, "shop_name": "КиберБелка", "shop_id": 645495, "delivery_cost": 350.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 18186.0, "offer_name": "Смартфон Xiaomi Redmi Note 8T 64Gb 4Gb синий моноблок", "model_id": "630030594", "url": "", "warranty": true, "on_stock": false, "cheapest": false, "premium": false, "cpa": false } ] }, { "site_product_id": 650874000, "site_product_url": "https://market.yandex.ru/product/650874000/offers?lr=213&how=aprice&good-state=new", "region_id": 213, "region_name": "Москва", "custom_fields": { "custom_field_1": "000002", "custom_field_2": "акционный товар", "custom_field_3": null, "custom_field_4": null, "custom_field_5": null }, "offers": [{ "price": 16900.0, "price_discount": 14890.0, "price_promo": null, "price_card": null, "price_min": 14890.0, "promo": null, "shop_name": "Flash Computers", "shop_id": 3534, "delivery_cost": 450.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 17350.0, "offer_name": "Смартфон Samsung Galaxy A51 SM-A515 64Gb синий", "model_id": "650874000", "url": "", "warranty": true, "on_stock": false, "cheapest": false, "premium": true, "cpa": false }, { "price": 14895.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 14895.0, "promo": null, "shop_name": "Economdrom.ru", "shop_id": 314597, "delivery_cost": 390.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 15285.0, "offer_name": "Смартфон Samsung Galaxy A51 64GB Красный", "model_id": "650874000", "url": "", "warranty": true, "on_stock": false, "cheapest": false, "premium": false, "cpa": false }, { "price": 19990.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 19990.0, "promo": null, "shop_name": "НОУ-ХАУ", "shop_id": 460099, "delivery_cost": 0.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 19990.0, "offer_name": "смартфон Samsung Galaxy A51 64Gb SM-A515F White", "model_id": "650874000", "url": "", "warranty": true, "on_stock": false, "cheapest": false, "premium": false, "cpa": false } ] }, { "site_product_id": 558171067, "site_product_url": "https://market.yandex.ru/product/558171067/offers?lr=213&how=aprice&good-state=new", "region_id": 213, "region_name": "Москва", "custom_fields": null, "offers": [{ "price": 50640.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 50640.0, "promo": null, "shop_name": "WISHMASTER", "shop_id": 397551, "delivery_cost": 390.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 51030.0, "offer_name": "Смартфон Apple iPhone 11 64GB Чёрный Dual Sim A2223", "model_id": "558171067", "url": "", "warranty": false, "on_stock": false, "cheapest": false, "premium": false, "cpa": false }, { "price": 50650.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 50650.0, "promo": null, "shop_name": "Video-shoper.ru", "shop_id": 58825, "delivery_cost": 400.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 51050.0, "offer_name": "Мобильный телефон Apple iPhone 11 64GB A2223 black (черный)", "model_id": "558171067", "url": "", "warranty": false, "on_stock": false, "cheapest": false, "premium": false, "cpa": false }, { "price": 50700.0, "price_discount": null, "price_promo": null, "price_card": null, "price_min": 50700.0, "promo": null, "shop_name": "MONSTORE.RU", "shop_id": 227952, "delivery_cost": 400.0, "delivery_region": "Доставка из Москвы", "is_priority_region": true, "price_with_delivery_cost": 51100.0, "offer_name": "Apple iPhone 11 64GB (PRODUCT)RED (MWLV2RU/A)", "model_id": "558171067", "url": "", "warranty": true, "on_stock": false, "cheapest": false, "premium": false, "cpa": false } ] } ], "status": "DONE" }