Что умеет решение
Bussol: Парсер и импорт данных PRO: сайты, REST API, Excel, JSON, XML, товары, цены и остатки
Универсальный модуль для импорта, парсинга и синхронизации данных в среде 1С-Битрикс. Решение позволяет извлекать информацию с веб-сайтов, через REST API, из файлов поставщиков и внешних систем, преобразовывать её по заданным правилам и автоматически загружать в инфоблоки, торговый каталог и Highload-блоки платформы.
Инструмент оптимален для интернет-магазинов, контентных проектов, каталогов, интеграционных задач с поставщиками, а также для агентств и разработчиков, стремящихся заменить набор разрозненных скриптов для HTML-парсинга, импорта Excel/XML/CSV и синхронизации API единым решением.
Возможности автоматизации:
Заполнение сайта товарами, новостями, статьями и прочим контентом.
Регулярное обновление цен и остатков на складе.
Импорт товаров и торговых предложений (SKU).
Синхронизация нескольких типов цен и валют.
Загрузка изображений, файлов и характеристик товаров.
Создание и обновление разделов и свойств инфоблоков.
Импорт данных в Highload-блоки.
Получение данных из REST API с поддержкой авторизации.
Обработка крупных прайс-листов и каталогов по расписанию.
Контроль наличия товаров и автоматическая деактивация отсутствующих позиций.
Модуль Bussol: Парсер и импорт данных PRO обеспечивает массовый обход страниц сайтов с поддержкой пагинации и извлечение контента из ресурсов, где данные формируются динамически через JavaScript.
Поддерживаемые источники данных:
HTML-сайты: использование CSS-селекторов и XPath, обход ссылок, работа с пагинацией, извлечение изображений, а также Headless-парсинг с выполнением JavaScript.
REST API и JSON: поддержка методов GET, POST, PUT, PATCH, DELETE, настройка заголовков, аутентификация Bearer, Basic Auth, OAuth2, а также маппинг вложенных структур данных.
XML и YML: обработка XPath, потоковая работа с большими файлами, импорт товаров и предложений.
CSV: работа по заголовкам колонок, обработка больших файлов, потоковый импорт.
XLSX и ODS: импорт таблиц с возможностью выбора листа и маппинга колонок.
FTP и SFTP: прямое получение файлов поставщиков с удалённых серверов.
Инструмент Visual Selector PRO предназначен для работы с HTML-источниками. Он позволяет настраивать парсер без ручного поиска селекторов в DevTools. Функционал включает визуальный выбор элементов страницы, автоматическое построение CSS-селекторов и формирование XPath, генерацию нескольких вариантов устойчивых селекторов, подсчёт количества совпадений, автоматическое обнаружение повторяющихся карточек товаров и элементов списков, а также работу с DOM после рендеринга JavaScript в Headless-режиме.
Если сайт построен на React, Vue, SPA или загружает данные динамически после открытия страницы, доступен Headless-режим. Модуль поддерживает локальные движки Playwright и Chromium, а также внешние headless-рендеры. Обычные HTML-профили при этом продолжают работать без необходимости в Node.js.
Гибкое сопоставление данных
Каждый профиль содержит правила соответствия между данными источника и полями 1С-Битрикс. Данные можно передавать в поля NAME, CODE, PREVIEW_TEXT, DETAIL_TEXT, а также в PREVIEW_PICTURE и DETAIL_PICTURE. Поддерживается заполнение любых свойств инфоблока, включая множественные и файловые типы. Доступна синхронизация цен и валют, остатков и складов, параметров торгового каталога, SKU и характеристик торговых предложений, а также UF-полей Highload-блоков.
Преобразование данных
Перед сохранением значения проходят через цепочку преобразований, что позволяет адаптировать данные поставщика под структуру сайта без написания отдельных PHP-скриптов. Доступны операции trim, замена текста, работа с регулярными выражениями, извлечение чисел, округление, умножение и деление, добавление префиксов и суффиксов, конвертация дат, ограничение длины и обработка HTML-разметки.
Пример обработки цены:
Исходное значение: "12 990 руб."
1. Преобразование в число (number)
2. Умножение на коэффициент 1.15 (multiply 1.15)
3. Округление (round)
Результат: 14 939
Модуль предназначен для работы не только с контентными инфоблоками, но и для полноценного управления торговым каталогом. Он обеспечивает создание и обновление товаров, генерацию торговых предложений SKU и автоматическое связывание SKU с родительскими товарами. Поддерживается настройка нескольких типов цен с индивидуальной валютой для каждого типа, конвертация валют, учет общего остатка и остатков по конкретным складам. В модуле реализована работа с весом, габаритами, ставками НДС и единицами измерения, а также загрузка изображений и файлов.
Функционал автоматического создания структуры включает генерацию разделов на основе данных источника с поддержкой вложенного дерева, создание отсутствующих свойств и значений для списочных свойств, а также автоматическую генерацию простых пользовательских полей для Highload-блоков.
Перед началом реальной синхронизации доступен режим Dry-run и сравнение изменений (Diff). В этом режиме модуль анализирует источник данных без внесения изменений на сайте. Результат анализа показывает список элементов, которые будут созданы или обновлены, данные, не подвергшиеся изменениям, а также сравнение старых и новых значений полей, включая изменения цен и валют. Эта функция особенно полезна при первом запуске нового поставщика или после корректировки правил сопоставления данных.
Модуль также обрабатывает логику удаления товаров, которые исчезли из источника.
После успешного завершения импорта модуль определяет позиции, которые ранее присутствовали в источнике, но отсутствуют в нём сейчас. Доступны режимы обработки таких позиций: ничего не делать, деактивировать товар, обнулить его остаток или деактивировать товар и обнулить остаток одновременно. Защитная логика предотвращает массовую деактивацию при ошибках источника, неполном обходе данных или достижении лимитов импорта.
Автоматизация и планирование
Поддерживаются следующие способы запуска: ручной запуск профиля, агенты Bitrix, планировщик cron, запуск по индивидуальному интервалу, пакетная обработка, ограничение количества страниц и элементов, повтор ошибочных задач и уведомления о результатах.
Многопроцессные Workers
Для работы с большими каталогами предусмотрена параллельная обработка очереди несколькими процессами workers. Реализованы настраиваемое количество workers, атомарный захват задания, lease-блокировки, heartbeat активного worker, защита от двойной обработки одной задачи и автоматический возврат зависших задач в очередь.
Пример запуска:
php /local/modules/bussol.contentparser/tools/cron.php --workers=4
Система обеспечивает автоматическое восстановление после сбоев.
Модуль Watchdog контролирует состояние очереди задач и фоновых процессов. При аварийном завершении PHP-процесса, cron-задачи или сервера он способен вернуть зависшие задачи в очередь и возобновить их обработку. Также модуль корректно обрабатывает ситуации, когда все задания уже выполнены, но процесс не успел завершить работу штатно.
Поддерживаемые методы авторизации и сетевые настройки включают Basic Auth, Bearer Token, OAuth2 Client Credentials, произвольные HTTP-заголовки и cookies. Настройка подключения возможна через HTTP/HTTPS прокси с аутентификацией, а также через протоколы FTP и SFTP с проверкой отпечатка ключа. Доступны настраиваемые таймауты.
При работе с большими файлами форматов CSV, XML, YML, XLSX и ODS используется потоковая обработка. Это позволяет не загружать весь файл в оперативную память, что критично для импорта крупных каталогов и прайс-листов, где стандартный импорт одним PHP-процессом может упереться в ограничение memory_limit.
Highload-блоки могут использоваться как самостоятельная цель профиля. Модуль Mapping записывает данные непосредственно в пользовательские поля (UF). Поддерживается создание новых записей, обновление существующих, настройка поля идентификации и автоматическое создание простых UF-полей.
Для каждого источника данных формируется отдельный профиль с индивидуальными настройками: тип источника, маппинг полей, целевой инфоблок или Highload-блок, раздел, расписание, авторизация, прокси, правила трансформации и стратегии обновления. Профили поддерживают экспорт и импорт в формате JSON. Чувствительные данные при экспорте по умолчанию удаляются.
Администратор получает единый интерфейс для мониторинга и диагностики. В панели состояния импорта отображаются последние запуски, количество созданных и обновленных элементов, текущая очередь задач, а также детальные отчеты об ошибках по конкретным URL и записям. Доступна информация о статусе рабочих процессов (workers), проверка установленных PHP-расширений, модулей iblock, catalog, highloadblock и currency, а также статус агента и очереди. Система также выполняет диагностику зависимостей, включая Headless, FTP/SFTP и другие сервисы.
После завершения синхронизации модуль способен отправлять уведомления через Email, административные уведомления 1С-Битрикс или на внешний Webhook. Настройка позволяет получать оповещения только об ошибках, только об успешных запусках или о каждом завершении профиля.
Модуль разработан с учетом работы с внешними источниками и прошел отдельный аудит безопасности. Включена защита от SSRF-атак и попыток обращений к приватным или служебным сетям.
Модуль обеспечивает комплексную защиту данных и процессов импорта. Реализованы проверки CSRF для административных действий, контроль прав доступа и защита конфиденциальных данных профилей. Система предотвращает инъекции в HTTP-заголовки и куки, проверяет отпечатки SFTP и фильтрует опасный HTML-код. Ограничены типы загружаемых файлов, исключена передача учетных данных авторизации на сторонние домены. Обеспечена безопасная обработка XML и внешних файлов.
Модуль предназначен для интернет-магазинов, которым требуется автоматическая синхронизация товаров, SKU, цен, остатков и складов. Поставщикам и дистрибьюторам инструмент позволяет работать через REST API, Excel, XML/YML, CSV и протоколы FTP/SFTP. Контентные проекты могут использовать решение для автоматической загрузки новостей, статей и каталогов. Интеграторы 1С-Битрикс получают единый инструмент для работы с различными источниками данных вместо написания индивидуальных скриптов. Цифровые агентства могут переносить профили между проектами и использовать их как основу для типовых интеграций.
Ключевые преимущества включают замену нескольких инструментов одним модулем с единым интерфейсом для сайтов, API, Excel и файлов поставщиков. Настройка интеграции осуществляется через профили без необходимости переписывания кода, где определяются маппинг и трансформации данных. Поддерживаются сценарии реального e-commerce: работа с SKU, несколькими ценами, валютами, складами и автоматическое удаление исчезнувших товаров.
Модуль Bussol: Парсер и импорт данных PRO предназначен для работы с современными веб-ресурсами, включая сайты с динамическим контентом на JavaScript. Поддерживается использование Headless-браузеров и расширенного визуального селектора PRO. Архитектура обеспечивает масштабирование за счет использования очередей задач, потоковой обработки данных и многопроцессных воркеров.
Система включает механизмы предварительного контроля: режимы Dry-run и сравнение изменений (diff) позволяют администратору оценить результаты до их применения. Надежность обеспечивается автоматическими повторными попытками, механизмами аренды задач, мониторингом активности (heartbeat), защитой от зависаний и восстановлением прерванных процессов. Административный интерфейс предоставляет панель управления, детальные журналы, инструменты диагностики и систему уведомлений.
Типовой сценарий импорта данных: запрос к REST API поставщика проходит аутентификацию OAuth2, получает данные в формате JSON, после чего применяются правила маппинга и трансформации. Перед записью выполняется проверка через Dry-run и diff. В систему импортируются товары с идентификаторами SKU, розничные и оптовые цены, а также остатки на складах. Данные обрабатываются очередью воркеров и автоматически синхронизируются с платформой 1С-Битрикс.
Требования к среде:
Базовый функционал работает в стандартной конфигурации 1С-Битрикс. Для расширенных возможностей требуются следующие компоненты:
- Библиотеки DOM, XMLReader и ZIP для работы с форматами XML, XLSX и ODS;
- Модуль «Торговый каталог» для управления товарами, ценами и SKU;
- Highload-блоки для назначения задач высокой нагрузки;
- Модуль «Валюты» для конвертации денежных единиц;
- Среда Node.js с библиотеками Playwright или Chromium, либо внешний рендерер для локального Headless/JavaScript-парсинга;
- PHP-расширения FTP и SSH2 для работы с соответствующими протоколами передачи файлов.
Bussol: Парсер и импорт данных PRO — универсальная платформа для автоматизации получения, преобразования и синхронизации внешних данных с 1С-Битрикс. Инструмент поддерживает сценарии от простого импорта текстовых статей до регулярной синхронизации крупных товарных каталогов. Поддерживаемые источники данных включают OAuth2 REST API, файлы Excel, форматы XML и YML, а также протокол SFTP. Все операции настраиваются через единые профили, систему маппинга полей, очередь задач и планировщик расписания. После первоначальной настройки источника модуль автоматически поддерживает актуальность данных на сайте.
Внедрение «Bussol: Парсер и импорт данных PRO: сайты, REST API, Excel, JSON, XML, товары, цены и остатки» можно поручить General iT — от установки до настройки и проверки совместимости с сайтом.