Сделал библиотеку, которая позволяет управлять браузером без БАС через nodejs.
Чтобы попробовать:
- Ставим ноду.
- Создаем новую папку, открываем там консоль.
- npm init -y
- npm install bas-browser-connector
- Создаем файл app.js c содержанием app.js
- Запускаем node app.js
Скрипт сам скачает БАС, найдет в гугл слово "тест" и выдаст 10 первых ссылок.
Немного про апи:
//Создаем коннектор
var BASBrowserConnector = require('bas-browser-connector')
var BAS = new BASBrowserConnector()
//Включаем лог по желанию
BAS.LogToConsole()
//Запускаю процесс
//При первом запуске будет скачивание, может занять какое-то время.
BAS.Start({Version:"20.1.0"},function(){
//Процесс запущен
})
//Грузим страницу
//Первый параметр - специальный xml, подробнее о нем можно узнать только изучив его парсер
//https://github.com/bablosoft/BAS/blob/master/ChromeWorker/commandparser.cpp
//Второй параметр, какой ответ ожидается от браузера.
BAS.Write("<Load>google.com</Load>", "<Load>", function(data){
//Страница загружена
//В data ответ от браузера.
})
//Останавливаем процесс
BAS.Stop({}, function(){
//Процесс остановлен
})
Поддерживается многопоточность, можно создать несколько экземпляров BASBrowserConnector и использовать их параллельно.
Пока либа достаточно сыра и нет документации, если сообщество заинтересуется, то я допилю до нормального состояния, но потом.