Як налаштувати парсер під будь-який сайт інтернет магазину - отримання каталогу товарів з цінами, описами та фото
Як працює парсер інтернет магазинів Elbuz
Всі інтернет-магазини створюються за допомогою мови HTML, це стандартизована мова розмітки сторінок у Всесвітній павутині, тому на всіх сайтах використовуються однакові елементи для різних блоків, парсер Elbuz використовує цей стандарт для отримання даних із сайту інтернет-магазину.
Список тегов HTML, які найчастіше використовуються, які є на сторінках інтернет-магазинів:
- Тег div. Універсальний блоковий елемент, який дозволяє виділити на сайті розділ із візуальним вмістом. Це може бути перелік товарів.
- Теґ a. Показує посилання на сторінку. Це можуть бути посилання на товари у певній категорії.
- Тег h1. Відображає заголовок першого рівня (так само є h2, h3, h4, h5, h6). Це може бути найменування товару.
- Тег p. Відображає текстовий абзац. Це може бути опис товару.
- Тег table. Відображає таблицю. Це може бути таблиця атрибутів товару.
- Тег ul. Відображає маркований список. Це може бути короткий опис товару.
- Тег img. Призначений для відображення сторінок зображень. Це може бути фотографії товару.
У тегах може вказуватись назва стилю для візуального відображення інформації на сайті, наприклад заданий стиль блоку дозволяє відобразити для будь-якого елемента жирний шрифт тексту або зелений колір. На основі цих стандартизованих даних у системі Elbuz можна налаштувати парсер під будь-який інтернет-магазин для отримання потрібної Вам інформації, парсер Elbuz для отримання даних використовує селектори CSS (дизайн стилі сайту) або XPath (мова запитів до елементів сайту) .
Для початку роботи необхідно встановити розширення для браузера Google Chrome, для цього перейдіть за посиланням. Парсинг можливий лише у браузері Google Chrome. Якщо посилання на магазин Chrome не працює, встановіть розширення вручну. Також можна не використовувати розширення для браузера, для цього необхідно активувати функцію серверного парсингу.
Створення нового парсеру
Щоб настроїти парсер, виконайте цей порядок операцій:
- Відкрийте прайс-листи.
- Натисніть кнопку Додати контрагента.
- Вкажіть назву сайту.
- Виберіть вкладку Парсер.
- Натисніть кнопку Додати сайт.
- Зазначте посилання на головну сторінку сайту.
- Вкажіть селектори тегів.
Щоб додати новий парсер сайту, відкрийте вікно "Прайс-листи", натисніть кнопку "+" і виберіть пункт "Додати контрагента"
Вкажіть назву контрагента (інтернет-магазину) та виберіть групу, за промовчанням доступні групи: Постачальник, Конкурент, Клієнт.
Після додавання контрагента Вам буде запропоновано вибір, звідки Ви хочете завантажувати дані, у цьому списку виберіть пункт "Парсер сайту" та натисніть кнопку "Додати сайт"
Вкажіть адресу інтернет-магазину для парсингу даних
Налаштування парсера для отримання даних із інтернет-магазину
Порядок роботи парсера для завантаження товарів з інтернет-магазину:
- Отримати посилання на категорії товарів
- Отримати посилання на товари
- Отримати картки товарів та зберегти потрібну інформацію
Після додавання парсера інтернет-магазину відкриється вікно налаштування
Таблиця налаштування містить типи операцій і список полів для збереження даних. Типи операцій - це етапи роботи парсера для отримання даних із сайту.
Наприклад, щоб отримати список товарів з сайту, необхідно отримати посилання на категорії товарів, щоб парсер міг відкрити сторінку для отримання інформації щодо кожного товару, тому перша операція яку використовуватиме парсер це "Список посилань на категорії товарів".
Типи операцій:
- Список посилань на категорії товарів. Використовується для отримання посилань на категорії товарів.
- Список посилань на товари. Використовується для отримання посилань на товари.
- Карточка товару. Використовується для отримання даних про товар. При виконанні цієї операції можна отримати з сайту назву товару, артикул виробника, модель, гарантію, назву виробника, фотографії, відео огляди та іншу інформацію.
- Атрибути товару. Використовується для отримання атрибутів товарів.
Опис колонок сітки для налаштування парсера
- Селекторні операції. Ознака головного селектора отримання даних із сайту для виконання цієї операції.
- Назва поля. Назва операції або поля для збереження даних.
- Селектор №1-4. Парсер Elbuz для отримання даних зі сторінок сайту використовує селектори CSS (стилі сайту) або XPath (мова запитів до елементів сайту), у поля селекторів вказуються умови, за якими необхідно знаходити на сайті потрібні Вам блоки та отримувати з них інформацію.
- Посилання на тестування. Посилання на сторінку сайту для тестування отримання даних. Для кожної операції вказується посилання на окремий розділ сайту, наприклад, для операції "Список посилань на категорії товарів" вказується посилання на головну сторінку сайту, де є список усіх категорій товарів. Для тестування отримання атрибутів товарів для операції "Картка товару" зазначається посилання на товар.
- Текст для чищення. Ключові слова для очищення даних. Наприклад, у найменуванні товару на сайті є зайвий текст, який Ви не хочете отримувати з сайту, Ви можете задати цей текст у полі "Текст для очищення" для його видалення.
- Знайти. Текст для пошуку.
- Замінити. Текст для заміни (на основі знайденого тексту).
- Отримувати HTML. Якщо необхідно зберегти форматування тексту отриманого зі сторінки сайту з використанням тегів html, тоді встановіть цей прапор.
- Регулярний вираз. Ви можете застосувати регулярне вираження для отримання потрібного значення на підставі тексту отриманого через селектор, тобто детальніше розібрати рядок на складові та отримати те, що необхідно.
- XPath. Активація для селектора режиму роботи мови запитів XPath.
- Максимальна кількість результатів. Дозволяє обмежити завантаження даних для тестування завантаження, щоб не чекати поки скачається весь сайт, можна задати отримання лише 1 посилання на категорію та отримання, наприклад, 2 посилань на товари, для цього для кожної операції Ви можете задати кількість результатів.
- Товари в цій операції. Ви можете отримати товари без відкриття карток товарів на сайті. Цей режим буде корисним, якщо потрібно отримати лише ціни на товари та інші значення, доступні при лістингу товарів у категорії.
- Примітка. Примітка для рядка настройки, наприклад, Ви можете зберегти нагадування, що означає це налаштування.
Етап №1. Отримання списку посилань на категорії товарів
Для отримання списку посилань на категорії товарів необхідно знайти селектор посилання, яке веде на категорію, для цього скопіюйте посилання із сайту (зазвичай це головна сторінка сайту) у полі "Посилання для тестування" та натисніть кнопку "Т"
Відкриється вкладка "Тестування завантаження" в якій буде відображена сторінка за вказаним посиланням, на ній повинні бути видні категорії товарів. Зліва відображаються результати роботи парсера, Ваше завдання отримати з сайту список посилань на категорії товарів, при вдалому налаштуванні парсера Ви побачите список посилань на категорії в лівій частині екрана.
Увага! Тестування завантаження можливе тільки для сайтів, які використовують безпечний протокол https, тільки для таких сайтів можна візуально перевірити отримання даних у вкладці "Тестування завантаження", при цьому все ж таки можна налаштувати парсинг таких сайтів (що використовують небезпечний протокол http), але візуально перевірити отримання даних не вийде, тобто всі теги та селектори необхідно вводити "наосліп" (навгад).
Для пошуку селектора посилань на категорії товарів натисніть праву кнопку мишки на найменування будь-якої категорії та виберіть пункт "Переглянути код", після чого відкриється вікно браузера з вихідним кодом сайту. Ви можете розташувати його як вам буде зручніше, наприклад, ліворуч або внизу екрана
Також ви можете відкрити посилання в окремій вкладці браузера, якщо вам потрібно більше місця на екрані для пошуку селектора посилань на товари і там зробити ті самі операції.
Шукаємо блоки категорій товарів та посилання на них
Ваше завдання знайти блоки посилань на категорії товарів. Після того як Ви вибрали пункт "Переглянути код" браузер відкриє вихідний код сайту в тому місці, де була натиснута права клавіша мишки, в даному прикладі ми натиснули на назві категорії і бачимо, що посилання на категорії розташовуються в тегах "div" і "a" (картинка нижче клікабельна збільшення).
Як видно, кожна категорія товару має блок "div" і в ньому містяться посилання "a", при цьому блок "div" має назву стилю links-list (class="links-list") і посилання "a" має назву стилю link ( class="link").
Пропишемо селектори налаштування парсера в такому вигляді: вказуємо назви тегів через пробіл і через точку вказуємо імена стилів. Можна просто вказати тег "a" та його стиль, якщо він унікальний у межах сторінки для посилання, яка веде на категорію товару (тоді 1й пункт прописувати не потрібно).
Перевіряємо результат, натискаємо кнопку "Т". Як видно з прикладу, ми отримали 74 посилання на категорії товарів, тобто наш парсер вже вміє шукати категорії на сторонньому сайті
Етап №2. Отримання списку посилань на товари
Для отримання списку посилань на товари необхідно дізнатися селектор посилання на товар на сторінці лістингу товарів у категорії, щоб відкрити будь-яку категорію товарів на сайті та скопіюйте посилання в поле "Посилання для тестування", потім натисніть кнопку "Т"
Відкриється вкладка "Тестування завантаження" в якій буде відображено сторінку за вказаним Вами посиланням, на ній має бути видно список товарів. Зліва відображаються результати роботи парсера, Ваше завдання отримати з сайту список посилань на товари, при вдалому налаштуванні парсера Ви побачите список посилань у лівій частині екрана.
Для пошуку селектора посилань на товари натисніть праву кнопку мишки на найменування будь-якого товару та виберіть пункт "Переглянути код", після чого відкриється вікно браузера з вихідним кодом сайту.
Шукаємо блоки товарів та посилання на них
Ваше завдання знайти блоки товарів із посиланнями на картку товару. Після того як Ви вибрали пункт "Переглянути код" браузер відкриє вихідний код сайту в тому місці, де була натиснута права клавіша мишки, в даному прикладі ми натиснули на найменування товару і бачимо, що посилання на товари розташовуються в тегах "div" і "a" .
Тобто кожен товар у результатах пошуку має блок "div" і містить посилання "a", при цьому блок "div" має назву стилю tile (class="tile").
Тобто кожен товар у списку відрізняється однаковим стилем під назвою tile, саме цю інформацію використовуватимемо для отримання посилань на кожен товар.
Пропишемо селектори в налаштування парсера в такому вигляді: через точку вказуємо ім'я стилю та тег "a" через пробіл
Перевіряємо результат, натискаємо кнопку "Т". Як видно з прикладу, ми отримали 28 посилань на товари, тобто наш парсер вже вміє знаходити товари на сторонньому сайті
Налаштування переходу сторінками (пагінація)
При відкритті категорії товарів зазвичай відображаються не всі товари, наприклад, може відображатися лише 28 товарів, наступні товари знаходяться на сторінці №2, цей режим називається пагінація (посторінковий висновок інформації). Для отримання посилань товарів на інших сторінках необхідно знайти селектор посилання, яке веде на наступну сторінку, Вам необхідно знайти на сторінці навігаційний блок для переходу на інші сторінки (пагінатор), на прикладі нижче, цей блок виглядає так і має такий селектор
ul[name="paginator"] li a
Знайдений селектор для пагінації товарів вказуємо у полі "Селектор №2"
Існують сайти, на яких у посиланнях на пагінацію немає поточного посилання на сторінку (посилання на категорію товару), тоді пагінація може бути визначена не коректно, приклад не вірного визначення, коли в посиланні є тільки номер сторінки, в результаті посилання буде вести на головну сторінку сайту
Щоб вирішити цю проблему, потрібно дізнатися про поточну адресу сторінки. Необхідно відкрити вихідний код сайту і спробувати знайти адресу на поточну сторінку, якщо таку знайдено, тоді необхідно вказати в поле Селектор №3 теги як її отримати, наприклад, їх блоку "Breadcrumbs" (хлібні крихти): div. breadcrumbs a. active
Етап №2 можна використовувати для отримання тільки списку товарів, даний режим буде корисний, коли необхідно отримати тільки ціни на товари, без описів, тих. характеристик і фото, при цьому швидкість отримання даних із сайту буде в рази вищою (немає необхідності на сайті переходити до карток товарів). Для активації цього режиму встановіть прапорець "Товари в цій операції" для типу операції "Список посилань на товари", далі вкажіть селектори для полів, які потрібно заповнити з сайту. Відповідно, слектор для отримання посилань на товари заповнювати не потрібно, тільки отримання "пагінації".
Етап №3. Отримання даних із картки товару.
За аналогією з пошуком селектора посилань на товари необхідно знайти селектори на потрібні Вам поля у картці товару, для цього прописуємо посилання на тестовий товар у полі "Посилання на тестування" та відкриваємо її
Вам необхідно натиснути правою кнопкою мишки на найменуванні товару та вибрати пункт "Переглянути код", після чого відкриється вікно браузера з вихідним кодом сайту.
Наприклад, найменування товару знаходиться в тезі h1
Пропишемо селектор h1 до таблиці налаштувань
Далі шукаємо селектор для ціни товару
Прописуємо селектор у такому вигляді
div. main-price span. price-number span
Далі шукаємо селектор для опису товару
Прописуємо селектор у такому вигляді
div[itemprop="description"]
Для посилань на фото прописуємо такий селектор
div. image img::attr(src)
Перевіряємо результат
Етап №4. Одержання атрибутів товару.
Для отримання атрибутів товарів необхідно вказати селектор на блок атрибутів (таблицю) та на селектор рядки, в якому є назва атрибута та значення.
Порядок дій:
- У полі "Селектор №1" вказуємо селектор на блок атрибутів
- У полі "Селектор №2" вказуємо селектор на блок у якому є назва та значення атрибута (тобто рядок таблиці атрибутів)
- У полі "Назва атрибута" вказуємо селектор, де знаходиться назва атрибута
- У полі "Значення атрибути" вказуємо селектор, де знаходиться значення атрибута
Приклад налаштування
Приклад налаштування на основі вихідного коду сайту
Результат перевірки отримання атрибутів товарів (характеристик, властивостей)
Якщо атрибути знаходяться на окремій сторінці
Якщо атрибути знаходяться на окремій сторінці, наприклад, при натисканні на вкладку "Характеристики" відкривається нова сторінка, тоді є два варіанти рішення, всі вони зводяться до того, щоб отримати посилання на сторінку, де є атрибути товарів, щоб програма могла перейти по ній та отримати дані.
Варівант №1. Посилання є у вихідному коді HTML.
Необхідно налаштувати селектор №3 для типу операції "Атрибути товару" для отримання посилання (або частини посилання на сторінку атрибутів).
Наприклад, при кліку на вкладку на сайті є такий HTML код, тоді селектор для отримання посилання буде: a. nav-tabs-link
Варівант №2. До посилання товар додається префікс, якого немає у явному вигляді у вихідному коді html.
Необхідно для типу операції "Атрибути товару" прописати префікс посилання на селектор №4 для додавання його до посилання товару.
Наприклад, можна прописати: tab=characteristics, тоді програма відкриє посилання на товар + префікс, цим парсер потрапить на сторінку атрибутів товарів. Що саме прописувати у префіксі визначається досвідченим шляхом після ретельного аналізу сайту.
Запуск парсингу із завантаженням каталогу товарів із стороннього сайту.
Завантаження товарів з сайту інтернет-магазину буде проведено в такому порядку:
- Отримуємо посилання на категорії товарів
- Отримуємо посилання на товари
- Отримуємо картки товарів та зберігаємо потрібну інформацію
Для тестування завантаження встановіть максимальну кількість результатів для етапів, щоб швидко перевірити парсинг даних із сайту інтернет-магазину. У цьому прикладі буде завантажено одне посилання на категорію товару зі списком товарів, з якої будуть отримані три посилання на товар.
Як отримати опції товарів
У програмі Elbuz товари-опції – це віртуальні товари, які прив'язані до одного головного товару, при цьому на сайті джерела це одна картка товару з набором опцій. Для отримання опцій необхідно прописати селектор для отримання назв опцій, вказати розділювач ком і поставити прапорець "Опція товару"
При тестуванні значення будуть відображені через кому
Після завантаження товарів із сайту, буде створено 1 головний товар та кілька товарів-опцій за кожним значенням, вказаним на сайті.
Як парсити сайт
Є кілька режимів роботи парсингу:
- Вказати посилання вручну на потрібні категорії або товари.
Якщо Вам потрібно отримувати товари тільки з певних категорій, необхідно додати посилання на потрібні категорії у вкладку "Список посилань". Також можна отримувати інформацію тільки по потрібних Вам товарах, для цього вкажіть посилання на товар і поставте прапорець "Посилання на товар". - Завантажити список посилань із файлу, за якими потрібно отримувати інформацію із сайту. Файл має бути у форматі CSV (текстовий файл).
- Завантажити ваші товари в базовий каталог і запустити пошук товарів на сайті на підставі ваших товарів, програма вставлятиме в рядок пошуку сайту ваше найменування товару та зберігатиме отриманий товар у базу даних програми. У цьому режимі важливо, щоб ваші найменування товарів були ідентичні найменуванням на сайті або сильно наближені до них, тому що точність пошуку залежить від алгоритму самого сайту, чи зможе він знайти потрібний вам товар чи ні.
Щоб завантажити список посилань з файлу, виконайте ці дії
Автоматизований пошук товарів на сайтах
- Необхідно вказати у налаштуваннях посилання на пошук. Посилання індивідуальне для кожного сайту. Щоб отримати посилання, введіть у рядку пошуку на сайті будь-який текст, скопіюйте з браузера посилання без тексту, приклад посилання:
https://site.com/?search_text={NAME}
Замість {NAME} програма підставить ваше ключове слово та сформує посилання для пошуку вашого товару на сайті джерела. Також можна вказати макропідстановку {SKU}, щоб пошук проводився за значенням поля "Артикул виробника", замість найменування. - Активувати параметр "Пошук за вашими товарами"
Це лише коротка презентація можливостей програми E-Trae Jumper, яка автоматизує процеси роботи сучасного інтернет-магазину.
Зверніться до нас для детальної консультації для вирішення ваших індивідуальних завдань. Контакти наведено на цьому сайті.
Програма для інтернет-магазину