Парсер и импорт каталога на заказ: как это устроено, что нужно учесть и сколько стоит
Короткий ответ: парсер на заказ — это программа, которая по расписанию забирает данные из внешнего источника, а импорт каталога приводит их в порядок и записывает на ваш сайт или в вашу систему; вместе они дают автоматическое обновление каталога. Надёжнее всего это работает, когда источник сам отдаёт данные через API, фид или файл: парсинг чужого сайта держится на его вёрстке и условиях доступа, которые источник может менять. Отдельной цены «парсер» в прайсе нет: ближайшие тарифы — интеграции от 32 000 ₽ и от 2 дней и автоматизация маркетплейсов от 40 000 ₽ и от 3 дней, остальное считаем после брифа.
Что такое парсер на заказ и чем он отличается от импорта каталога товаров на сайт?
Парсер собирает данные, импорт кладёт их к вам: это два шага одной цепочки, и заказывать нужно оба. Импорт сопоставляет данные с вашим каталогом, приводит к единому виду и записывает на сайт, в 1С или в таблицу; запущенная по расписанию, эта цепочка и даёт автоматическое обновление каталога.
- Сбор. Откуда и в каком виде приходят данные: страницы, API, фид, файл.
- Приведение в порядок. Дубли, единицы, категории, пустые поля. Здесь решается, можно ли доверять каталогу.
- Запись и обновление. Что создать, обновить или скрыть, если позиция пропала у источника, и как часто это повторять.
Откуда берутся данные: страницы сайта, API, фид, файл или 1С?
Из пяти источников. Чем «официальнее» канал, тем реже он ломается и тем проще его сопровождать: парсинг страниц — самый хрупкий вариант, обмен с вашей учётной системой — самый предсказуемый.
В магазине AleksFurs обмен с 1С идёт по протоколу CommerceML 2.08, как описано на странице интеграций. Чем API отличается от обмена файлами, разобрано в статье «Интеграция по API: что это простыми словами».
Чем парсинг чужого сайта рискованнее обмена по API или фиду?
Тем, что опирается на страницы, сделанные для людей: договорённости о формате с источником у вас нет. API и фид источник создал и описал сам, а у парсинга чужого сайта есть два риска, о которых стоит знать до заказа.
- Источник меняет вёрстку. Разметка сайта не гарантирована: владелец меняет её, когда нужно. После обновления сбор либо останавливается, либо, что хуже, молча берёт не то поле — например, старую цену вместо новой. Поэтому в парсер закладывают проверки данных и уведомление о сбое.
- Источник закрывает или ограничивает доступ. Тогда сбор остановится. Обход защиты, капчи и блокировок мы не обещаем и здесь не описываем: если доступ закрыт, правильный ход — договориться с источником о фиде или API, а не искать лазейку.
У API и фида свои риски, но они заметнее и согласуются с поставщиком заранее. Если источник — ваш поставщик, сначала попросите у него фид или API: это обычно проще в сопровождении, чем парсинг его сайта.
Что решить до заказа: права на данные, условия источника, персональные данные?
Два вопроса: можно ли использовать данные источника так, как вы хотите, и нет ли в них сведений о людях. Юриста мы не заменяем: сверьте условия источника — пользовательское соглашение, правила сайта, договор с поставщиком — и при необходимости посоветуйтесь с юристом до подписания договора.
- Чьи это данные. У текстов, фото и баз товаров может быть владелец и свои условия использования. Самый чистый случай — поставщик, с которым вы договорились о фиде или API и об использовании его фото и описаний. Если вы сами передаёте нам файлы, то по разделу 3 типового договора заказчик гарантирует наличие прав на передаваемые материалы и отвечает за их правомерное использование.
- Условия источника. Прочитайте, что сайт говорит об автоматическом сборе данных. Если запрет прямой или условий не найти, начните не с парсера, а с вопроса источнику: нельзя ли получить фид или API.
- Персональные данные. Для каталога товаров они, как правило, не нужны. Если в источнике есть имена, телефоны, адреса или отзывы с именами, решите, нужно ли их забирать: персональные данные регулирует 152-ФЗ, и проще не собирать лишнее.
Какой источник использовать, решаете вы; в ТЗ записываются источники, поля, которые берём, и поля, которые не берём.
Как устроено автоматическое обновление каталога: дубли, единицы, категории, частота?
Автоматическое обновление каталога — это не «скачать заново», а набор правил: что считать одним товаром, в каких единицах хранить значения, куда класть категории источника и что делать с пропавшей позицией. Их записывают в ТЗ до разработки: от них зависит чистота каталога после каждой загрузки.
- Дубли. Один товар у двух поставщиков или под разными названиями. Нужен ключ сопоставления — обычно артикул. В обмене AleksFurs с 1С новая позиция создаётся, а существующая обновляется по артикулу.
- Единицы и форматы. Штуки и упаковки, миллиметры и сантиметры, цена с НДС и без: у каждого источника своё, а каталог один.
- Категории. Дерево источника редко совпадает с вашим: нужна таблица соответствий, а новые категории не должны появляться на сайте сами.
- Пустые значения. Товар без цены не должен выходить за ноль рублей. В том же обмене AleksFurs такой товар скрыт до загрузки цен.
- Ваши ручные правки. Правка менеджера в описании пропадёт, если загрузка её перезапишет. Заранее разделите поля: какие обновляет источник, а какие остаются вашими.
Частоту обновления определяют два вопроса: как часто данные меняются у источника и чем вам грозит устаревшая цена или остаток. Для остатков и цен нужно чаще, чем для описаний. Чаще необходимого обновлять не стоит: это нагрузка на источник и риск, что он ограничит доступ. Частоту записываем в ТЗ после брифа.
Как это сделано в кейсе SerialCars?
В кейсе SerialCars каталог из 621 автомобиля собирает и пересчитывает конвейер данных, а не человек. По описанию на странице кейса, это Python-конвейер, который подтягивает объявления с площадки encar.com по семи маркам: цены, пробег, год и комплектации не вбиваются руками. Но сбор — лишь начало цепочки; поучительнее то, что сделано после него.
- Достройка недостающего. Площадка не публикует мощность двигателя, и отдельная таблица оценивает её по модели и комплектации.
- Фильтр до показа. Неликвид убирается до публикации: кей-кары и микролитражки внутреннего рынка, коммерческий транспорт, комплектации такси и проката, LPG и водородные модели.
- Честность о пробелах. Отчёт о ДТП запрашивали не у всех машин, и карточка прямо пишет «отчёт закажем до выкупа», а не подставляет удобный продавцу вариант.
- Расчёт на выходе. У каждой машины цена под ключ во Владивостоке из семи строк и дата, на которую актуальны ставки.
- Отдельный конвейер для фото на Swift с Vision.
Выводов три: сбор данных ещё не каталог; недостающее поле лучше показать как неизвестное, чем придумать; у данных, расчёта и фото своя логика и своё сопровождение. Чего на странице кейса нет: стоимости и срока создания конвейера и условий, на которых площадка отдаёт данные. Поэтому ориентиром для цены кейс не служит, а условия вашего источника проверяются отдельно, как описано выше.
Сколько стоит парсинг сайтов на заказ и что есть в прайсе?
Отдельной цены на парсер сайтов в прайсе нет, а «среднюю по рынку» мы не приводим: проверить её по первоисточнику нельзя. Ближайших тарифов два; цену под ваш источник считаем после брифа и фиксируем в договоре до старта.
- Автоматизация маркетплейсов — от 40 000 ₽, от 3 дней. Парсер назван в составе прямо, но это парсер аналитики: позиции, цены конкурентов и продажи в дашборд или выгрузку. Подробности — на странице маркетплейсов.
- Интеграции и автоматизация — от 32 000 ₽, от 2 дней. Связка до двух систем через API или вебхуки, журнал ошибок, проверка на реальных данных. Ориентир для импорта из API, фида или 1С; парсинг чужого сайта в тариф прямо не назван, его считаем отдельно.
- Каталог внутри магазина или веб-приложения. Магазин — от 104 000 ₽ и от 5 дней, веб-приложение — от 160 000 ₽ и от 10 дней. В магазин входят только демо-примеры товаров: наполнение каталога сверх них оплачивается отдельно.
Цена растёт с числом источников, объёмом каталога, частотой обновления, сложностью правил для дублей и категорий, фото и ручной проверкой перед публикацией. Отдельно считаются подписки сторонних сервисов, доработка самих систем и каждая система сверх двух. Оплата — двумя платежами по 50%, исполнитель освобождён от НДС по п. 1 ст. 145 НК РФ.
Как выглядит сопровождение парсера?
Сопровождение нужно потому, что источники меняются: это свойство внешних данных, а не дефект парсера. Хорошая загрузка не молчит о сбое и не затирает каталог подозрительными данными.
- Журнал, уведомления, инструкция. В интеграционных тарифах студии ошибки обмена пишутся в журнал, уведомления о событиях приходят в Telegram, на почту или в мессенджер, а в комплекте есть инструкция, что делать при сбое.
- Предохранители. Если пришло подозрительно мало позиций или цены резко изменились, загрузка должна остановиться и ждать решения человека. Это правило стоит записать в ТЗ.
- Срок и цена. По прайсу первые 7 дней после запуска сбои обмена исправляем бесплатно, дальше — абонентка от 7 900 ₽ в месяц или разовые задачи, см. поддержку и развитие.
Гарантия по договору — 30 календарных дней на ошибки по вине исполнителя — не распространяется на сбои сторонних сервисов. Если источник поменяет вёрстку или формат уже после запуска, это задача поддержки; какие случаи считать сбоем стороннего сервиса, лучше проговорить на брифе.
Когда парсер или импорт каталога не нужны?
Когда данные уже есть в удобном виде или меняются редко: автоматизация нужна там, где ручное обновление отнимает время или рождает ошибки.
- Поставщик даёт фид или API. Берите их: парсинг его сайта рискованнее и сложнее в сопровождении.
- Каталог небольшой и меняется редко. Хватит ведения товаров в админке или разовой загрузки.
- Данные нужны один раз. Это миграция, а не парсер; считается как отдельная работа.
- Нужно «забрать каталог конкурента целиком». Здесь вопрос прав и условий источника самый острый: сначала он, потом цена.
Что подготовить к брифу на парсер и импорт каталога?
Восемь пунктов, с которыми можно называть цену и срок.
- Источники: сайты, фиды, API, файлы; по каждому — владелец и наличие разрешения или договора.
- Поля: что нужно (название, артикул, цена, остаток, фото, описание) и что брать не нужно.
- Примеры: несколько типичных и несколько «проблемных» позиций — с дублями, пустой ценой, нестандартными единицами.
- Куда загружать: сайт, магазин, 1С или таблица.
- Частота: как часто данные меняются и чем грозит устаревание на час или на сутки.
- Правила: что делать с дублями, пропавшими позициями и пустыми ценами; наценка, округление, курс.
- Персональные данные: есть ли они в источнике и нужны ли вам.
- Ответственные: кто получает уведомления о сбоях и решает, что делать, если источник изменился.
Короткие ответы на частые вопросы
Сколько стоит парсинг сайтов на заказ?
Отдельной цены на парсер сайтов в прайсе нет. Парсер аналитики входит в автоматизацию маркетплейсов — от 40 000 ₽ и от 3 дней, а импорт по API или из 1С ближе всего к тарифу интеграций — от 32 000 ₽ и от 2 дней. Цену под ваш источник называем после брифа и фиксируем в договоре до старта.
Что надёжнее: парсинг сайта или обмен по API и фиду?
API и фид надёжнее: источник сам отдаёт данные в описанном формате, и изменения в нём проще заметить заранее. Парсинг держится на вёрстке чужого сайта и на его условиях доступа, поэтому ломается, когда их меняют.
Что будет, если источник поменяет вёрстку или закроет доступ?
Сбор остановится или начнёт брать не те данные. Поэтому в ТЗ закладывают журнал, уведомление о сбое и остановку загрузки при подозрительных данных. Если доступ закрыт, разумный путь — договориться с источником о фиде или API; обход защиты мы не обещаем.
Можно ли собирать данные с любого сайта?
Не любые данные можно использовать как угодно: у источника могут быть свои условия, а в данных — сведения о людях. Сверьте условия источника и при необходимости посоветуйтесь с юристом до заказа; юриста мы не заменяем.
Как часто может обновляться каталог?
Частота зависит от двух вещей: как часто данные меняются у источника и чем вам грозит устаревшая цена или остаток. Её записываем в ТЗ после брифа; обновлять чаще, чем нужно бизнесу, не стоит.
Что подготовить, чтобы назвали цену парсера?
Список источников и право их использовать, нужные поля, несколько типичных и несколько «проблемных» позиций, место загрузки, желаемую частоту и правила для дублей и пропавших товаров.
Услуги и кейсы по теме: интеграция с 1С и CRM от 32 000 ₽ · кейс SerialCars · автоматизация Wildberries и Ozon · цены и сроки
Напишите, из каких источников нужны данные, какие поля и как часто они меняются, — скажем, нужен ли парсер, и назовём цену и срок после брифа.
Рассчитать проект →Оценку срока и цены по брифу делаем бесплатно, обычно отвечаем в течение часа в рабочее время. Типовой договор — посмотреть до оплаты.