Volver al Blog
Primeros pasos

Automatizacion sin framework con Bot Script

Usa el flag --bot-script de BotBrowser para automatizacion ligera del navegador mediante Chrome DevTools Protocol, sin dependencias externas.

Que es Bot Script?

BotBrowser incluye un modo de automatizacion integrado via --bot-script. Ejecuta un archivo JavaScript en un contexto privilegiado del navegador con acceso completo a la API chrome.debugger. No requiere Playwright, Puppeteer ni Node.js.

Como funciona

Al pasar --bot-script=tu-script.js, BotBrowser carga el archivo en un contexto privilegiado al inicio. Obtienes:

  • Acceso completo a la API chrome.debugger para enviar comandos CDP directamente.
  • Sin artefactos de framework en el contexto de la pagina.
  • Ejecucion temprana antes de que se complete la primera navegacion.
  • APIs estandar del navegador: console, setTimeout, fetch y mas.

Inicio rapido

Crea my-script.js:

chrome.debugger.getTargets(function (targets) {
  const page = targets.find((t) => t.type === "page");
  if (!page) return;

  chrome.debugger.attach({ targetId: page.id }, "1.3", function () {
    if (chrome.runtime.lastError) {
      console.log("Attach failed:", chrome.runtime.lastError.message);
      return;
    }

    chrome.debugger.sendCommand(
      { targetId: page.id },
      "Page.navigate",
      { url: "https://example.com" },
      function () {
        console.log("Navigation started.");
      }
    );
  });
});

Lanza BotBrowser con tu perfil y script:

chromium-browser \
  --bot-profile="/path/to/profile.enc" \
  --bot-script="/path/to/my-script.js"

Bot Script vs Playwright/Puppeteer

Bot ScriptPlaywright / Puppeteer
DependenciasNingunaNode.js + paquetes npm
Estilo de APICallbacks chrome.debuggerBasado en Promises, selectores de alto nivel
Tiempo de setupInstantaneoRequiere instalacion y configuracion
Ideal paraTareas ligeras de una paginaFlujos de trabajo complejos multi-paso

Solucion de problemas

"chrome.debugger API not available": Asegurate de usar el flag --bot-script.

El script no se ejecuta: Usa una ruta absoluta para --bot-script.

Fallo de attach: Otra sesion de depuracion puede estar conectada. Llama a chrome.debugger.detach() primero.

Mas informacion

#bot-script#automation#cdp#getting-started#framework-less