Звичайне підключення постачальника починається з прайсу: XML, YML, CSV або Excel. Але постачальник не зобов’язаний його робити, і доволі часто є лише сайт із каталогом. Це вирішується, але інакше.
Чому прайс простіший
Прайс — уже структуровані дані: артикул, назва, ціна й залишок лежать по своїх місцях, програмі лишається їх прочитати. Правила читання одні на всі прайси одного формату.
На сайті тих самих даних немає. Є сторінки, де ціна перемішана з версткою, характеристики в одного постачальника таблицею, в іншого — рядком в описі, а залишок позначений словом «є». Розбір доводиться писати під конкретний сайт, і на іншому він працювати не буде.
Що означає «зібрати із сайту»
Програма обходить каталог сторінка за сторінкою й дістає звідти те саме, що взяла б із прайсу: назву, артикул, ціну, наявність, фотографії, характеристики. Далі товар іде тим самим конвеєром, що й будь-який інший, — націнка, заміни, картинки, мета-теги. З цього моменту різниці вже немає.
Від чого залежать строк і ціна
- скільки різних типів сторінок — каталог, картка, сторінка бренду: кожен розбирається окремо;
- як влаштований обхід — звичайна посторінкова навігація чи підвантаження під час прокручування;
- де лежать характеристики — таблиця розбирається, суцільний текст в описі майже ні;
- чи закритий каталог — за входом для оптовиків або обмеженням за частотою запитів.
Тому ціну такої роботи ми не називаємо наперед: спершу дивимося каталог, потім рахуємо. Порядок сум — на сторінці Ціни.
Що ламається найчастіше
Сайт постачальника змінюють, не попереджаючи, і розбір перестає влучати в розмітку. Це не поломка програми, а властивість способу: будь-який збір зі сторінок живе рівно до наступного редизайну. Тому якщо в постачальника є хоч якийсь файл — нехай кривий Excel, що надсилають поштою, — з ним буде і дешевше, і надійніше.
Як зрозуміти, чи вийде
Надішліть посилання на каталог. Ми подивимося, як він влаштований, і відповімо за день: вийде чи ні, скільки це займе і що буде на виході. До оплати.