Встроенные языки в BAS: запуск Node.js
Модуль «Встроенные языки» в Browser Automation Studio — запускать код Node.js и пакеты NPM внутри сценария для нетривиальных задач и переиспользования готового кода.
Когда визуальных блоков и встроенного JavaScript мало, модуль «Встроенные языки» — самый глубокий выход в BAS: он запускает код Node.js со всей экосистемой NPM за спиной, внутри вашего сценария.
Что он делает
Модуль используется для запуска участков кода через Node.js и его модули NPM. Он содержит одно действие — Node.js — и это одно действие открывает полноценную среду исполнения: всё, что можно сделать в Node, с любым пакетом, который можно установить из NPM, становится доступно как шаг бота.
Для кого он
Это явно инструмент для продвинутых пользователей. Два случая его требуют:
- Нетривиальные задачи — логика, которую неудобно или невозможно выразить визуальными блоками, где реальный код просто уместнее.
- Переиспользование готового кода — у вас уже есть рабочий JavaScript или Node-код, и вы хотите вставить его в сценарий, а не пересобирать блок за блоком.
Node.js против «Выполнить код» из «Инструментов»
Не путайте его с действием Выполнить код из модуля «Инструменты»:
- Выполнить код («Инструменты») запускает JavaScript в контексте страницы — для чтения переменных страницы, работы с DOM, небольшого скриптинга против открытого сайта.
- Node.js («Встроенные языки») запускает полную среду Node с пакетами NPM — для реальной программной работы, которой нужны библиотеки: криптография, парсинг форматов, сложные преобразования данных, общение с сервисом по SDK.
Тянитесь к действию из «Инструментов» для быстрого скриптинга на уровне страницы; к «Встроенным языкам» — когда задаче нужна полноценная среда программирования. Это редкий модуль, которого большинство ботов никогда не касаются, — и тот, что снимает потолок для тех, кто касается.
Вопросы и ответы
Может ли BAS запускать код Node.js?
Да. Модуль «Встроенные языки» запускает участки кода через Node.js и его пакеты NPM внутри сценария. Он рассчитан на продвинутых пользователей с нетривиальными задачами или на тех, кто переиспользует готовый код JavaScript/Node.
Чем Node.js отличается от действия «Выполнить код» в BAS?
Действие «Выполнить код» модуля «Инструменты» запускает JavaScript в контексте страницы. Модуль «Встроенные языки» запускает Node.js с доступом к пакетам NPM — более полная среда для логики, которой нужны реальные библиотеки, а не только скриптинг страницы.
Ещё по теме
- Browser Automation Studio: полный практический гидГид
- Создаём первого бота в Browser Automation StudioПошаговый разбор создания первого рабочего бота в BAS — от пустого проекта до процесса, который ходит по страницам, извлекает данные и работает в несколько потоков.
- Настройка прокси в Browser Automation StudioКак правильно настроить прокси в BAS — типы прокси, привязка по потокам, ротация и проверки, которые не дают мультиаккаунт-ботам попасть под бан.
- Поиск элементов в BAS: селекторы, которые не ломаютсяКак работает поиск элементов в Browser Automation Studio — CSS против XPath, почему записанные селекторы ломаются и как писать селекторы, переживающие изменения страницы.