Competitor parser - парсинг сайтів для OpenCart/OcStore
Competitor parser - парсинг сайтів для OpenCart/OcStore
Автоматичний імпорт товарів з будь-яких сайтів до вашого інтернет-магазину. Налаштували один раз – модуль сам парсить за розкладом, завантажує фото, створює категорії та оновлює ціни.
Технічні деталі
Демо
Опис
Competitor Parser — дозволяє автоматично імпортувати товари та категорії з будь-яких сторонніх сайтів прямо до вашого інтернет-магазину. Налаштовуєте один раз — далі все працює за розкладом без вашої участі.
Для кого цей модуль?- Ви хочете наповнити новий магазин товарами із сайту постачальника- Вам потрібно тримати ціни та наявність актуальними – дані оновлюються автоматично- У вас кілька джерел і кожен потрібно парсити за своїми правилами- Ви втомилися вручну копіювати описи, фото та характеристики
Як це працює:Ви створюєте профіль, вказуєте посилання на сторінку каталогу або sitemap, настроюєте CSS/XPath-селектори полів товару, задає розклад. Далі модуль сам обходить усі сторінки, завантажує товари та додає їх до OpenCart.
Що парсить:Основні поля товару:- Назва, опис (HTML зберігається), модель, артикул (SKU)- Ціна та акційна ціна- Кількість на складі
Зображення:- Головне фото та вся галерея товару- Зображення всередині HTML-опису - теж завантажуються та замінюються на локальні посилання- Стиснення та зміна розміру при завантаженні (задаєте максимальну ширину та висоту)- Підтримка WebP - автоматично конвертується в JPG якщо потрібно
Атрибути (характеристики):- парси пари назва/значення з таблиць характеристик- Підтримка угруповання за розділами – важливо для складних товарів (телефони, ноутбуки): «Пам'ять», «Камера», «Харчування» тощо. створюються як окремі групи атрибутів- Назва групи за промовчанням налаштовується під ваш магазин
Опції товару (варіанти):- Парсит варіанти типу Розмір, Колір та будь-які інші- Декілька слотів опцій - для сайтів де опції зверстані по-різному- До кожного значення можна прив'язати ціну та кількість
Категорії:- Хлібні крихти (для автоматичного створення категорій)- Два режими: класти всі товари в одну обрану категорію – або автоматично відтворювати ієрархію з хлібних крихт- Категорії створюються в OpenCart автоматично, якщо їх ще немає
Джерела даних:Link — Сторінка каталогу з пагінацією, парсер сам переходить сторінкамиSitemap — XML Карта сайту, бере список URL товарів безпосередньоFeed / RSS / Atom — Будь-який XML-фід з товарамиПагінація підтримується двома способами: CSS/XPath-селектор кнопки «Наступна сторінка» або шаблон URL (?page={n}).
Режими імпорту:Тільки нові — існуючі товари не торкаютьсяТільки оновлення — оновлює існуючі, нові не створюєНові + оновлення — створює нові та оновлює існуючіПовна синхронізація — додатково видаляє з магазину товари, яких більше немає в джерелі
Фонова обробка та розклад:Парсинг виконується через cron-запит без обмежень часу виконання, без тайм-аут. Кожен профіль має свою cron-посилання - просто додайте її до планувальника завдань сервера. Розклад налаштовується у профілі (cron expression).Між запитами до сайту-джерела пауза 0.5 секунд, браузерні заголовки та підтримка cookie - для обходу базового захисту від ботів.
Реєстр та розумний матчинг:Модуль веде реєстр усіх спарсенных товарів та категорій. При повторному запуску не створює дублі - знаходить існуючий товар за URL, потім артикулом, потім за назвою. Якщо URL товару змінився, реєстр оновлюється автоматично.
Тестування без ризику:Перед запуском повного парсингу перевірте налаштування у тестовому режимі:Тест сторінки категорії — показує скільки товарів знайдено та приклади посиланьТест товару — парсить одну сторінку і показує всі знайдені поля; нічого не зберігається у БДДіагностика — по кожному полю видно: "знайдено" / "не знайдено" / "порожній" / "селектор не вказано"
Сервісні інструменти:Управління SEO URL — сканує ЧПУ-адреси магазину, знаходить товари і категорії без slug, заповнює відсутні, виправляє адреси, що дублюються.Очищення зображень — знаходить файли в папці модуля, які більше не використовуються в жодному товарі, показує скільки місця звільниться - і видаляє однією кнопкою.Очищення реєстру — видаляє записи реєстру, у яких товар чи категорія вже видалені через адмінку.Відключення неповних товарів — знаходить та відключає товари без фото або з ціною 0.
Інтерфейс:- Весь модуль управляється з однієї сторінки в адмінці OpenCart- Підтримка темного режиму- Лог у реальному часі – видно що відбувається прямо зараз- Кілька профілів - кожен зі своїми налаштуваннями, розкладом та джерелом- Реєстр категорій та товарів з пагінацією та швидкими посиланнями на редагування
Вимоги:- Розширення cURL (для надсилання повідомлень)- Cron на сервері (для автоматичної роботи)- PHP розширення: curl, gd, dom
Ліцензія:Комерційний модуль із прив'язкою до домену.Ліцензія перевіряється через захищений сервер.Одна ліцензія – один домен.
Відгуки (0)
Увійдіть, щоб залишити відгук.
УвійтиВідгуків поки немає
Будьте першим, хто залишить відгук!
Питання (0)
Увійдіть, щоб задати питання.
УвійтиПитань поки немає
Задайте перше питання про цей товар!
Історія змін
- *Безпека
- - Посилено захист від заміни мети запиту при зборі даних із сайту-донора (перевірка адреси перед запитом та на кожному переході по редиректу, блокування звернень до внутрішніх/локальних адрес).
- - Додано авторизацію для автоматичного запуску завдань за розкладом (cron) — запуск стороннім запитом більше неможливий.
- - Перевірка SSL-сертифіката сайту-донора включена за замовчуванням; для окремих профілів її можна вимкнути вручну, якщо це потрібно.
- - Обмежений доступ до розділів та дій модуля для користувачів із недостатнім правом.
- - Усунуто можливість виконання стороннього коду через перегляд опису товару.
- *Продуктивність
- - Прискорено завантаження зображень товарів при парсингу за рахунок паралельного завантаження замість послідовного.
- *Виправлено
- - Виправлено помилку, через яку обробка карти сайту (sitemap), що містить посилання на інші карти сайту (sitemap index), могла перериватися з помилкою.
- - Виправлені та перекладені тексти інтерфейсу модуля всіма мовами, що підтримуються.
- *Безпека
- - cron-endpoint захищено токеном — анонімний запуск парсингу заблоковано
- - захист від SSRF у завантажувачі зображень — блокування приватних IP-діапазонів та небезпечних протоколів
- - перевірка прав доступу (`modify`) на всіх мутуючих діях адмін-контролера
- *Виправлено
- - дублювання товарів що були створені поза модулем парсингу