Як налаштувати правила розбору сторінки в парсері сайту

17 хв

За правилами розбору Elbuz знаходить на кожній сторінці сайту назву, ціну, фото й характеристики і заповнює ними прайс джерела. Підібрати правила допомагають майстер селекторів і AI.

Коли це знадобиться:

  • Сайт новий, правил ще немає — майстер показує готові селектори для всіх груп посилань на сторінці.
  • Картку товару налаштовувати довго — AI підбирає селектори полів, перевіряє їх на сторінці й записує в правила.
  • Ціна стоїть із текстом або в різних блоках — запасні селектори й регулярний вираз чистять значення.
  • Дані товару лежать у JSON усередині сторінки — майстер JSON показує дерево даних і перевіряє шлях до значення.

З чого почати: вкладка «Налаштування завантаження» → крок 1, посилання на категорії.

Що вміють правила розбору

Де це і хто має доступ

Меню
Довідники → Обробка прайс-листів → Список прайс-листів
Сітка правил
рядок «Парсер сайту» → «Налаштування» → вкладка «Налаштування завантаження»
Право доступу
вікно «Прайс-листи»
Підготувати
адресу розділу й адресу картки товару — для тесту правил

Як влаштована сітка правил

Вкладка «Налаштування завантаження» є тільки в універсального парсера. Це сітка правил, згрупована за операціями обходу, і кожна група — це один крок конвеєра. Рядки правляться прямо в комірці, по кліку; кнопки «Зберегти» тут немає, як і на решті вкладок цього вікна.

Грід правил розбору на вкладці «Налаштування завантаження», згрупований за типами операцій
1Список посилань на категорії товарів
2Картка товару
3Селектор операції
4Селектор №1
5Посилання для тестування
6Іконка-блискавка
  1. Група «Список посилань на категорії товарів» — перший тип операції: звідси беруться посилання на розділи сайту.
  2. Група «Картка товару» — тип операції, де перелічені поля, які збираються зі сторінки товару.
  3. Рядок «Селектор операції» — з нього починається розбір, тут-таки розташовані кнопки перевірки.
  4. Колонка «Селектор №1» — адреса потрібного місця на сторінці.
  5. Колонка «Посилання для тестування» — без неї кнопки перевірки селектора не працюють.
  6. Іконка-блискавка — підбір селекторів майстром або AI; версія з AI перезаписує вже збережені селектори.

У кожній групі перший рядок називається «Селектор операції» — це адреса самого списку або блоку, з якого починається розбір усієї групи. Решта рядків — окремі поля товару. Різниця між ними важлива: якщо не спрацював «Селектор операції», не спрацює вся група, скільки б полів ви не заповнили нижче.

Для операцій «Картка товару» і «Атрибути» «Селектор операції» можна лишити порожнім — тоді програма шукає поля по всій сторінці. Для двох операцій зі списками порожній селектор означає, що на цьому кроці обхід зупиниться.

Чотири колонки селекторів — і чотири різні змісти

У кожному рядку є «Селектор №1» … «Селектор №4». У рядку поля це запасні варіанти: програма пробує їх по черзі й зупиняється на першому, який дав значення. Зручно, коли акційні товари розмічені інакше за звичайні: у №1 кладете основний варіант, у №2 — акційний. Виняток — одне поле, «Зображення»: там перебираються всі чотири колонки й фото складаються в один список.

А от у рядку «Селектор операції» чотири колонки означають зовсім різні речі, і залежить це від операції:

ОпераціяСелектор №1Селектор №2Селектор №3Селектор №4
Список посилань на категорії товарів посилання на розділи ще три селектори посилань на розділи: усі чотири виконуються, знайдене складається в один список
Список посилань на товари блок товару або посилання на картку посилання пагінації посилання на поточну сторінку (канонічна адреса) додаткові посилання пагінації
Картка товару блок картки; порожньо — уся сторінка — — посилання на товари-опції: кожне стане окремим завданням «Картка товару»
Атрибути блок характеристик; порожньо — уся сторінка рядок характеристики: без нього операція нічого не збере посилання на окрему сторінку характеристик хвіст, який дописується до адреси картки, щоб отримати сторінку характеристик

Звідси два практичні наслідки. Пагінація на сайті налаштовується не в групі «Список посилань на категорії товарів», як здається за назвою, а в «Селекторі №2» групи «Список посилань на товари». І характеристики з окремої сторінки («Технічні характеристики» окремою вкладкою) вмикаються заповненням «Селектора №3» або «№4» у групі «Атрибути»: щойно там щось зʼявилося, програма перестає шукати характеристики на самій картці й заводить окреме завдання на другу сторінку.

Що ще можна задати в рядку правила

Решта колонок — це обробка вже знайденого значення. Порядок у неї фіксований, і плутанина з ним дає більшість «дивних» результатів.

  1. Що взяти. За замовчуванням береться текст елемента. Галочка «Отримувати HTML» лишає розмітку — потрібна для опису; «Дозволені HTML теги» звужує її до перелічених, наприклад <p><br><ul><li>.
  2. Адреси добудовуються. Відносне посилання /catalog/nasosy/ перетворюється на повне; #, javascript:, mailto: і tel: відкидаються; хвіст ?click_track_data= зрізається.
  3. Автоматична чистка. З тексту прибираються HTML-коментарі, службові атрибути тегів, емодзі, нерозривні пробіли й повтори пробілів.
  4. «Текст для очищення» — вирізає з результату вказаний текст. Кілька значень пишуть через |||.
  5. «Знайти» / «Замінити» — три різні дії залежно від того, що заповнено. Обидва поля — звичайна заміна. Тільки «Замінити» — текст дописується в кінець значення. Тільки «Знайти» — текст вирізається.
  6. «Видаляти посилання» — прибирає з результату теги посилань; що саме видаляти, свій домен чи чужі, задають два прапорці в акордеоні «Додатково».
  7. Ціна. У полях типу «ціна» лишаються тільки цифри й роздільники, роздільник тисяч і десятковий беруться з налаштувань прайсу, результат округлюється до двох знаків. Якщо в одному значенні трапилося дві ціни — стара і нова поруч, — береться менша.
  8. «Регулярний вираз» — витягає шматок зі знайденого значення.
  9. «Розділювач значення» — якщо селектор знайшов кілька елементів, вони склеюються через цей роздільник. За замовчуванням кома, для категорії — « / », для фото — |||.

Ще дві колонки стосуються не значення, а кількості. «Макс. кількість результатів» у рядку «Селектор операції» обмежує, скільки елементів узяти з однієї сторінки: поставили 20 — на прогоні з розділу приїде двадцять товарів, скільки б їх там не було. У тесті правила це обмеження не діє, і результат покаже все знайдене. А от кількість сторінок пагінації, які програма будує за адресою, та сама цифра обмежує і в тесті, і на прогоні. «Префікс посилання», попри назву, дописується в кінець адреси — ним будують сторінки пагінації виду ?page=.

«Регулярний вираз» працює по-різному залежно від того, чи є в рядку селектор. Без селектора програма шукає вираз по всій сторінці й бере кожне співпадіння першої дужки. Разом із селектором — застосовує вираз до знайденого значення й бере друге співпадіння першої дужки. Тобто вираз, який співпадає рівно один раз, у парі з селектором не змінює нічого: значення лишається таким, яким було. Якщо вираз «не працює», перевірте спершу це, а не сам вираз.

Ще одна дрібниця, яку легко не помітити: якщо замість селектора написати текст у фігурних дужках, він стане фіксованим значенням поля. {Нова колекція} в полі «Виробник» проставить це слово всім товарам, нічого не шукаючи на сторінці.

Як підібрати й перевірити селектор

Селектор пишуть CSS або XPath; для XPath у тому ж рядку ставлять галочку «XPath» — без неї розбір сторінки обривається з помилкою. Синтаксис, ::attr(), псевдокласи й готові рецепти під кожне поле — у довіднику селекторів.

Підібрати селектор допомагають три різні кнопки, і плутати їх не варто.

  • Тест правила (іконка з горизонтальними стрілками в рядку «Селектор операції») — відкриває сторінку на сусідній вкладці «Тестування завантаження» і показує в лівій панелі «Результат тестування» те, що повернув селектор. Нічого не змінює в правилах.
  • Кнопка-блискавка в тому ж рядку — «Отримати селектори зі сторінки». Для двох операцій зі списками вона відкриває «Майстер налаштування парсера», для «Картки товару» й «Атрибутів» — підбір штучним інтелектом. Обидва варіанти качають сторінку сайту.
  • Паличка AI-помічника в тулбарі вкладки «Список посилань», підказка «AI-помічник: скласти CSS-селектор або XPath». Це розмова, а не кнопка: ви вставляєте шматок HTML зі сторінки, помічник відповідає готовим селектором і поясненням, що саме той вибирає. У сітку правил він нічого не пише — селектор ви копіюєте самі.
Тест правила показує в лівій панелі, скільки посилань знайшов селектор; звузили селектор — число змінилося

«Майстер налаштування парсера» теж нічого не записує за вас, і це головне, що про нього треба знати. Він качає сторінку й показує сітку: «Активність», «Назва», «Посилання», «Селектор», «Усього посилань». Кожен рядок — група схожих посилань зі сторінки та готовий CSS-селектор для неї, а колонка «Усього посилань» показує, скільки посилань під цей селектор потрапляє.

Підказка вгорі вікна так і каже: «Наведений нижче список посилань сайту на основі стилів CSS (атрибут class). Вам потрібно скопіювати потрібний селектор та вставити його в поле "Селектор операції".» Тобто ваша робота — знайти рядок, у якому кількість посилань схожа на кількість розділів (або товарів у розділі), і перенести його селектор у сітку правил руками.

Підбір штучним інтелектом працює інакше: сторінка скачується, розмітка чиститься й іде в модель, запропоновані селектори програма одразу перевіряє на цій самій сторінці, за невдачі робить один повторний запит по полях, які не спрацювали, і записує результат у правила. Перед запуском вікно перепитує: «AI підбере селектори для цієї операції та ЗАМІНИТЬ ними поточні налаштування розбору. Повернути попередні значення буде неможливо.» Кнопка підтвердження підписана «Підібрати і замінити».

Скасування в цієї заміни немає — ні кнопкою, ні повторним підбором. Якщо селектори налаштовані руками й працюють, скопіюйте їх собі перед тим, як тиснути блискавку.

Усі три кнопки в рядку правила вимагають заповненої колонки «Посилання для тестування»: для операцій зі списками — адреса розділу, для картки й атрибутів — адреса товару. За порожньої колонки блискавка покаже вікно «Виникла проблема!» з текстом «Посилання для тестування!», а кнопка тесту просто нічого не зробить — жодного повідомлення не буде.

Як прочитати результат тесту

Ліва панель «Результат тестування» — головний інструмент налаштування, і показує вона рівно те, що поверне прогін. Вигляд залежить від операції.

  • Для двох операцій зі списками — заголовок із кількістю в дужках («Список посилань на категорії товарів (37)») і сам перелік: назва, під нею адреса. Число в дужках — перше, на що варто дивитися: 0 означає мертвий селектор, 300 замість 30 — що селектор захопив усе меню сайту разом із службовими сторінками.
  • Для «Списку посилань на товари» під переліком іде другий заголовок — «Список посилань на сторінки лістингу товарів (пагінація)» з тим самим лічильником. Порожньо тут — значить із розділу приїде тільки перша сторінка.
  • Для «Картки товару» — перелік полів із назвами: «Найменування», «Ціна (у валюті акаунта)», «Артикул виробника» і далі, кожне зі своїм значенням. Нижче окремими блоками «Фото (8)» з мініатюрами, «Відео», «Файли», «Атрибути» і «Посилання на товари» (це товари-опції з «Селектора №4»).
  • Для «Атрибутів» — пари «назва: значення» і лічильник у заголовку.

Біля кожного знайденого посилання в результатах першої операції стоїть кошик «Додати до списку ігнорування» — сміттєві розділи відсіюються прямо звідси, правило йде в , який живе в окремому вікні.

Кошиків у рядку буває два, і правила вони заводять різні: біля назви — ігнорування за назвою розділу, біля адреси — за адресою.

Тест і майстер селекторів беруть сторінку по-різному, і це видно, коли сайт капризний. Тест відкриває адресу у вбудованому вікні вашого браузера, а розмітку повертає розширення Elbuz — тобто ви бачите сторінку такою, якою її бачить ваш браузер, з вашими куками. Майстер і підбір AI качають сторінку сервером Elbuz. Якщо тест показує дані, а прогін у серверному режимі — ні, причина зазвичай саме тут: сайт віддає різне браузеру й серверу.

Вкладка «Тестування завантаження»: зліва результат тесту картки товару по кожному полю, справа сторінка товару
1Результат тестування
2Посилання на сайт
3Межа між панелями
  1. Сюди програма виведе те, що повернув селектор, разом із кількістю знайдених елементів у дужках.
  2. Адресу сторінки можна вписати вручну, не повертаючись у грід правил.
  3. Межу тягнуть мишкою, ширина панелей запам'ятовується.

Крок 1. Список посилань на категорії товарів

Що робить програма. Відкриває одну сторінку — адресу з поля «Посилання на категорії», а якщо воно порожнє, головну сторінку сайту, — і збирає з неї всі посилання, які підпадають під селектор. Ніякого «розумного» відсіву тут немає: скільки посилань під селектор потрапило, стільки й піде в чергу, разом із «Доставкою» й «Контактами», якщо вони лежать у тому самому меню.

Що задаєте ви. Один селектор посилань у рядку «Селектор операції» — і, за потреби, ще три в колонках №2–№4, якщо розділи на сторінці розмічені по-різному (наприклад, верхнє меню й плитка на головній). Колонка «Префікс посилання» тут працює як хвіст: те, що в ній написано, дописується до кожної знайденої адреси в кінець.

Як перевірити. Кнопка тесту в цьому рядку. Число в заголовку результату має бути схоже на кількість розділів у каталозі сайту.

Не знаєте, який CSS-селектор для посилань на категорії. Його не вгадують, а беруть зі сторінки сайту. Впишіть у колонку «Посилання для тестування» адресу головної або сторінки з меню розділів і натисніть у рядку «Селектор операції» кнопку-блискавку «Отримати селектори зі сторінки».

Відкриється «Майстер налаштування парсера» (про три помічники): кожен рядок сітки — група посилань сайту за CSS-класом, колонка «Селектор» — готовий CSS-селектор для неї, «Усього посилань» — скільки адрес він ловить. Знайдіть рядок, де число схоже на кількість розділів каталогу, а посилання в колонці «Посилання» ведуть у категорії, скопіюйте «Селектор» у «Селектор операції» й перевірте тестом правила. У правила майстер сам нічого не записує.

Що видно при помилці. Якщо селектор не знайшов нічого, у журналі парсингу залишиться один рядок із кодом 200 — сторінка приїхала, а завдань наступного кроку не зʼявилося. У стрічці це виглядає як миттєве «Завдання завершено».

Якщо ввімкнено «Авто пошук селекторів», а колонка порожня, поведінка інша. Програма спершу викидає зі сторінки підвал, бічні колонки й скрипти, потім перебирає сорок вісім типових селекторів меню й каталогу, бере до чотирьох різних і записує їх у порожні колонки правила. Заодно вона відкидає посилання за списком службових слів — «Оплата», «Доставка», «Контакти», «Блог», «Кошик», «Порівняти», мовні перемикачі й сторінки входу. Тому після тесту з увімкненим автопошуком сітка правил перечитується: у ній уже стоять підібрані селектори.

Крок 2. Список посилань на товари

Що робить програма. Відкриває сторінку розділу й робить дві речі одразу: збирає посилання на картки товарів і збирає адреси наступних сторінок цього розділу. На кожен товар створюється завдання «Картка товару», на кожну сторінку пагінації — ще одне завдання цього ж кроку.

Що задаєте ви. «Селектор №1» — блок товару в лістингу (наприклад, div.product-item) або посилання на картку. «Селектор №2» — посилання пагінації. Якщо пагінації на сайті немає, а сторінки будуються адресою, згодяться три спеціальні колонки: «Селектор загальної кількості сторінок», «Селектор загальної кількості товарів» і «Селектор кількості товарів на сторінці» — з них програма порахує число сторінок і збудує адреси сама, дописуючи «Префікс посилання» й номер (наприклад, ?page=).

Окремий випадок — «Товари в цій операції». Це прапорець у тому ж рядку «Селектор операції». Якщо він стоїть, картки товарів не відкриваються зовсім: назва, ціна, наявність і фото беруться прямо з лістингу, а заповнювати треба вже не один селектор, а рядки полів у цій самій групі. Саме його й вмикає перемикач майстра «Завантажувати товари та ціни без відкриття картки».

У режимі «товари прямо з лістингу» товар без назви або без адреси не зберігається взагалі. Тому поле «Посилання на товар (URL)» у цій групі обовʼязкове нарівні з назвою: без нього прогін пройде чисто, а в прайсі не буде жодного рядка.

Як перевірити. Тест на адресі розділу. У результаті мають бути два лічильники: товари й пагінація. Якщо стоїть «Товари в цій операції», замість переліку посилань зʼявиться перелік полів кожного товару — там одразу видно, чи не поїхала ціна разом зі старою ціною.

Що видно при помилці. Порожній перелік означає, що селектор блоку не збігається з версткою. Якщо ж на сторінці розділу товарів немає взагалі — трапляється, коли розділ складається з підрозділів, — програма не здається: вона пробує розібрати цю саму сторінку правилами першого кроку й забрати з неї посилання на підрозділи.

Ще одна колонка цієї групи виручає на сайтах, де пошук іноді відкриває одразу картку товару замість списку: «Текст на сторінці для переходу на наступну операцію». Якщо вказаний текст знайшовся на сторінці, програма не шукає посилань, а розбирає цю сторінку як картку товару.

І остання підстраховка цього кроку: якщо в режимі «товари прямо з лістингу» селектори не дали жодного товару, а на сторінці є розмітка товарів для пошукових систем, програма пробує зібрати товари з неї. У «Картці товару» такої підстраховки немає.

Крок 3. Картка товару

Що робить програма. Відкриває сторінку товару й заповнює поля прайсу — по одному рядку правила на кожне поле. Фото, відео й файли складаються в окремі списки товару. Якщо в «Селекторі №4» стоїть селектор посилань, кожне знайдене посилання стає ще одним завданням «Картка товару» — так забирають товари-опції, які на сайті лежать окремими сторінками.

Що задаєте ви. Селектори полів. Заповнене з коробки одне — h1 для назви. Порожній рядок означає «це поле не збирати»: жодних значень за замовчуванням у нього не підставиться.

Повний перелік полів картки й що з кожним відбувається дорогою в каталог — у статті Що саме забирає парсер із картки товару.

Як перевірити. Тест на адресі будь-якого товару. У лівій панелі буде перелік полів із значеннями та блок «Фото» з мініатюрами — видно і те, що зібралося, і те, що зібралося не так.

Що видно при помилці. Порожнє поле в результаті тесту — порожній або мертвий селектор. Товар у прайсі без назви — той самий випадок, тільки вже після прогону.

Кілька дрібниць програма робить сама, і на них не треба витрачати селектори. Категорія товару, якщо поле «Категорія з прайсу» порожнє, береться з «хлібних крихт» у розмітці сторінки, а слова на кшталт «Головна / » і «Каталог / » з початку відкидаються. Посилання на YouTube, яке потрапило в поле «Зображення», їде у відео, а не у фото. Картинки-заглушки з іменами placeholder, no-photo, empty, no_image, no-image і картинки з /brand/ не зберігаються.

Крок 4. Атрибути

Що робить програма. Розбирає таблицю характеристик рядок за рядком і зберігає пари «назва — значення». Якщо «Селектор №3» і «№4» порожні, характеристики шукаються на тій самій сторінці картки, одразу після її розбору. Якщо в них щось є, характеристики беруться з окремої сторінки, і на неї створюється власне завдання.

Що задаєте ви. Чотири рядки: «Селектор операції» — блок характеристик (наприклад, table.specs) або порожньо, якщо блок не виділяється; «Селектор №2» у цьому ж рядку — селектор одного рядка характеристики (tr); далі окремі рядки «Назва атрибута» і «Значення атрибута» — це вже комірки всередині рядка (td.name і td.value). Ще два рядки, «Назва блоку атрибута» й «Опис атрибуту», потрібні сайтам, де характеристики поділені на розділи.

Як перевірити. Тест на адресі товару: у результаті буде «Атрибути (N)» і самі пари. Якщо характеристики беруться з окремої сторінки, у результаті тесту зʼявиться рядок з її адресою — це нормально, значить програма знайшла, куди йти.

Що видно при помилці. Порожній «Селектор №2» — характеристики не зберуться взагалі, навіть якщо решта заповнена: без селектора рядка операція завершується, нічого не роблячи. Однакові назва й значення в парі — селектори комірок вказують на той самий елемент; такі пари програма відкидає сама.

Товари віддаються JSON-ом прямо в сторінці

Багато сайтів кладуть дані товару не в HTML-розмітку, а в JSON-обʼєкт усередині сторінки — у тег <script> або в атрибут на кшталт data-product. Парсер сайту вміє забирати дані звідти, але тільки в групах «Картка товару» й «Атрибути»: для списків посилань JSON не розбирається. У рядку «Селектор операції» кожної групи є іконка файлу з кодом, підказка «Налаштувати отримання з JSON». Вона відкриває вікно «Майстер налаштування отримання даних із формату JSON».

Вікно «Майстер налаштування отримання даних із формату JSON»
1Регулярний вираз для JSON
2Кнопка «Отримати JSON»
3Вкладка «Дерево даних»
4Вираз для тестування
  1. Поле регулярного виразу — за ним із коду сторінки витягується текст у форматі JSON.
  2. Кнопка «Отримати JSON» завантажує сторінку й застосовує вираз.
  3. Вкладка «Дерево даних» показує структуру отриманого JSON; поруч — вкладка «Отриманий код».
  4. Поле «Вираз для тестування отримання даних» — шлях до значення, яке перевіряє кнопка «Перевірити».
  1. Заповніть у рядку «Селектор операції» колонку «Посилання для тестування» адресою картки товару — майстер бере сторінку саме звідти.
  2. У полі «Регулярний вираз для отримання тексту у форматі JSON» напишіть вираз, який вирізає JSON зі сторінки; потрібна частина береться з першої групи в дужках. Наприклад, для <script>var product = {...};</script> підійде var product = (\{.*?\});, для атрибута — data-product_variations="(.*?)". Поле зберігається саме, щойно ви його змінили, — у колонку «Регулярний вираз для отримання JSON» цього рядка правила.
  3. Натисніть «Отримати JSON». Майстер бере вже збережений вираз і на вкладці «Дерево даних» показує структуру обʼєкта, на вкладці «Отриманий код» — сирий текст. Порожньо — вираз нічого не вирізав або вирізане не є коректним JSON.
  4. У полі «Вираз для тестування отримання даних» спробуйте шлях до потрібного значення, наприклад name або offers.price, і натисніть «Перевірити».

Руками в сітці правил лишається дві речі: поставити в рядку «Селектор операції» галочку «JSON» і в рядках полів («Найменування», «Ціна»…) вписати в «Селектор №1» замість CSS шлях у JSON — мовою JMESPath, тією самою, що в полі тесту.

Якщо вираз знаходить на сторінці кілька збігів, майстер показує останній, а парсер під час прогону бере перший. Шляхи, перевірені в майстрі, тоді можуть не спрацювати на прогоні — уточніть вираз так, щоб збіг був один. Сторінку майстер завантажує з сервера напряму, без розширення й проксі, тож сайт, який блокує сервери, у майстрі може віддати порожньо, хоча в браузері відкривається.

Сценарії

Досить назви й ціни, картки відкривати не треба

У групі «Список посилань на товари» поставте в рядку «Селектор операції» прапорець «Товари в цій операції» і заповніть у цій самій групі рядки полів: «Найменування», «Посилання на товар (URL)», «Ціна (у валюті акаунта)». Товари збираються прямо зі сторінки розділу, завдання «Картка товару» не створюються.

Чого не буде: характеристик і всього, що є тільки в картці, а не на сторінці розділу. Товар без назви або без адреси не збережеться зовсім — тому поле «Посилання на товар (URL)» тут обовʼязкове.

Характеристики лежать на окремій вкладці сайту

У групі «Атрибути» заповніть у рядку «Селектор операції» «Селектор №3» — посилання на сторінку характеристик, або «Селектор №4» — хвіст, який дописується до адреси картки. Програма перестане шукати характеристики на самій картці й заведе окреме завдання на другу сторінку.

Чого не буде: без «Селектора №2» — рядка характеристики — пари «назва — значення» не зберуться ні на картці, ні на окремій сторінці.

Пагінації на сайті немає, сторінки будуються адресою

У групі «Список посилань на товари» заповніть «Селектор загальної кількості сторінок» або пару «Селектор загальної кількості товарів» і «Селектор кількості товарів на сторінці», а в «Префікс посилання» — хвіст на кшталт ?page=. Програма порахує число сторінок і збудує адреси сама.

Чого не буде: «Макс. кількість результатів» обмежує й кількість збудованих сторінок — і в тесті, і на прогоні.

Що робити, коли правило не працює

Що ви бачитеЧому такЩо зробити
Тест правила показує порожню панель, хоча селектор скопійований із браузера У рядку записаний XPath, а галочка «XPath» не поставлена — або в CSS-селекторі є синтаксична помилка. Розбір сторінки в такому разі обривається, а не повертає порожній список Поставити галочку «XPath» у цьому ж рядку або виправити селектор (про селектори)
«Регулярний вираз» у рядку правила нічого не змінює Разом із селектором вираз бере друге співпадіння першої дужки. Якщо співпадіння одне, значення лишається як було Прибрати селектор із рядка, щоб вираз шукав по всій сторінці, або переписати вираз так, щоб потрібне було другим співпадінням (обробка значення)
Атрибути не збираються, хоча селектори назви й значення заповнені Порожній «Селектор №2» у рядку «Селектор операції» групи «Атрибути»: без селектора рядка характеристики операція завершується, нічого не роблячи Вписати в «Селектор №2» селектор одного рядка характеристики, зазвичай tr (крок «Атрибути»)
У режимі «без відкриття картки» прогін проходить, а в прайсі порожньо Товар без назви або без адреси не зберігається. Найчастіше не заповнене поле «Посилання на товар (URL)» у групі «Список посилань на товари» Заповнити в цій групі обидва поля — «Найменування» і «Посилання на товар (URL)» (крок «Список посилань на товари»)
Вікно «Виникла проблема!» з текстом «Посилання для тестування!» Натиснуто кнопку-блискавку, а колонка «Посилання для тестування» в рядку порожня Вписати в цю колонку адресу сторінки потрібного виду: розділу — для операцій зі списками, картки товару — для картки й атрибутів

Часті запитання

Налаштовую парсер нового постачальника й не знаю, який CSS-селектор поставити для посилань на категорії. Як підібрати?

Майстром: впишіть у «Посилання для тестування» адресу сторінки з меню розділів і натисніть блискавку в рядку «Селектор операції». Скопіюйте селектор рядка, де «Усього посилань» схоже на кількість розділів, і перевірте тестом (покроково).

Де в налаштуваннях задається пагінація?

У групі «Список посилань на товари», рядок «Селектор операції», колонка «Селектор №2». Якщо посилань пагінації немає, сторінки будуються адресою — див. крок 2.

Тест правила показує порожньо, хоча селектор я скопіював із браузера. Що не так?

Три причини: XPath без галочки «XPath»; у «Посиланні для тестування» сторінка не того виду — розділ замість картки; сайт віддає серверу не те, що браузеру. Детальніше: як прочитати результат тесту.

Натиснув кнопку підбору селекторів штучним інтелектом. Можна повернути старі значення?

Ні. Після підтвердження «Підібрати і замінити» скасування немає: селектори доведеться вписати заново або підібрати ще раз. Перед блискавкою копіюйте робочі значення собі.

Чи можна поставити одне значення всім товарам, не шукаючи його на сторінці?

Так: замість селектора напишіть текст у фігурних дужках. {Нова колекція} у полі «Виробник» проставить це слово всім товарам.

Суміжні теми

Чи була стаття корисною?