Open Browser
Open Browser
Sección titulada «Open Browser»Tipo: browser-open · Paquete: Browser v1.0.9 · Salida: ZoanPageSession
Abre un navegador web y devuelve una sesión de página lista para trabajar. Es el punto de partida de toda automatización web: casi siempre es la primera actividad del navegador en tu playbook.
Usa el navegador ya instalado en la máquina (Chrome, Edge o Firefox), sin descargas adicionales, o el Chromium que trae el paquete. Con userDataDir puedes cargar el perfil real del usuario (sus cookies y sesiones iniciadas), útil para saltarte logins.
Cómo funciona
Sección titulada «Cómo funciona»Tienes dos modos de uso (explicados en detalle en la introducción del paquete):
- Con
body: las actividades dentro del sub-flujo heredan la sesión automáticamente y el navegador se cierra solo al terminar, también si algo falla dentro (salvo que activeskeepOpen). La forma más simple. - Sin
body: guarda la sesión en una variable de salida y la pasas a las siguientes actividades; tú la cierras con Close Browser.
Al abrir:
- Elige el navegador: el de
browser; si está vacío, el navegador predeterminado de la configuración del proyecto; si tampoco hay,chrome. Si nadie eligió y Chrome no está instalado, usa el Chromium incluido (y lo deja anotado en el log). Ver navegadores compatibles. - Decide si hay ventana: el
headlessde la actividad; si está vacío, el de la configuración del proyecto; si tampoco, con ventana (en una máquina sin pantalla, sin ventana). - Arranca el navegador y espera a que responda, hasta
timeout.- Chrome y Edge se abren con un perfil temporal limpio en la carpeta temporal del sistema (
zoan-browser-<puerto>), que se borra al cerrar. Ese perfil descarga los archivos sin preguntar y guarda los PDF en lugar de abrirlos en el visor, lo que facilita Wait for Download. - Con
userDataDirusa ese perfil (cookies, sesiones, contraseñas y extensiones) y reutiliza su primera pestaña. El navegador no debe estar abierto con ese mismo perfil.
- Chrome y Edge se abren con un perfil temporal limpio en la carpeta temporal del sistema (
- Si indicas
url, navega a ella y espera al eventoloadde la página (dentro del mismotimeout).
Sin ventana, el área visible es de 1920×1080; con ventana, la página ocupa el tamaño de la ventana.
Parámetros requeridos
Sección titulada «Parámetros requeridos»Ninguno. (Todos son opcionales: por defecto abre Chrome con una página en blanco.)
Parámetros opcionales
Sección titulada «Parámetros opcionales»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
browser | string | "chrome" | Navegador: chrome · edge · firefox · chromium. chrome, edge y firefox usan el instalado en el equipo; chromium, el que trae el paquete. Vacío: el de la configuración del proyecto o, si no hay, chrome. |
url | string | — | URL a la que navegar al abrir. Si se omite, la página empieza en blanco. |
headless | bool | false | Ejecutar sin ventana visible (modo segundo plano). Vacío: el de la configuración del proyecto; si no hay, con ventana salvo en máquinas sin pantalla. |
windowState | string | "maximized" | Estado inicial de la ventana (si no es headless): maximized · normal · minimized. |
timeout | number | 90000 | Tiempo máximo en ms para arrancar el navegador y cargar url: en las sesiones desatendidas el navegador tarda más en arrancar. 0 o negativo: el valor por defecto. No usa el tiempo de espera del proyecto. |
slowMo | number | 0 | Ralentiza cada operación N ms (útil para depurar y ver qué hace el bot). |
userDataDir | string | — | Ruta al perfil del navegador (p. ej. C:\Users\{usuario}\AppData\Local\Google\Chrome\User Data). Carga cookies, sesiones y contraseñas reales. El navegador debe estar totalmente cerrado antes. |
executablePath | string | — | Ruta a un ejecutable de navegador basado en Chromium (.exe, .bat o .cmd). Tiene prioridad sobre browser. |
args | List | — | Argumentos extra de lanzamiento del navegador, p. ej. ["--lang=es-CO"]. Los repetidos se descartan. |
keepOpen | bool | false | Al usar body, mantener abierto el navegador al terminar y devolver la sesión como salida. |
Sub-flujos
Sección titulada «Sub-flujos»Opcional. Actividades a ejecutar con este navegador; heredan la sesión sin configurar page. Al terminar (bien o con error) el navegador se cierra, salvo con keepOpen = true. Si se omite, la actividad devuelve la sesión como salida para usarla en pasos posteriores.
Una ZoanPageSession que representa la pestaña abierta:
| Uso | Qué devuelve |
|---|---|
Sin body | La sesión de página (el navegador sigue abierto hasta Close Browser). |
Con body y keepOpen = true | La misma sesión, todavía abierta, al terminar el body. |
Con body y keepOpen = false | Nada: el navegador ya se cerró. |
Ejemplos
Sección titulada «Ejemplos»Modo body (recomendado):
Open Browser browser = chrome url = "https://example.com" headless = false └─ body: Page Get Text selector = (h1) → output: titulo Log message = "Título: " + tituloModo headless con salida (para producción desatendida):
Open Browser browser = chrome url = "https://portal.example.com" headless = true → output: pagePage Fill page = page selector = (#buscar) value = "factura 2026"Close Browser session = pageErrores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
No se encontró chrome. Instálalo o indica la ruta con 'executablePath'. (o edge, Firefox) | Elegiste un navegador que no está en sus rutas estándar de instalación. Instálalo, elige otro en browser o indica executablePath. |
No se encontró el ejecutable del navegador. | La ruta de executablePath no existe. Corrígela. |
La extensión '.lnk' no está permitida para executablePath. Usa .exe, .bat o .cmd. | executablePath apunta a un acceso directo u otro tipo de archivo. Usa la ruta del .exe. |
[browser-open] Invalid value '…' for 'browser'. Allowed: chrome, edge, firefox, chromium. | Escribiste en browser (o en windowState) un valor que no está en la lista. Elige uno de los admitidos. |
Navegador no reconocido: '…'. Usa: chrome, edge, firefox, chromium. | El navegador llegó de una expresión o de la configuración del proyecto con un valor que no es uno de los cuatro admitidos. |
El endpoint de depuración del navegador (puerto …) no respondió en 90000 ms: … | Chrome o Edge arrancó pero no respondió a tiempo, o se cerró nada más abrir (el detalle final lo dice). Sube timeout o revisa que el equipo pueda abrir el navegador. |
No se pudo iniciar el proceso del navegador. | Windows no dejó lanzar el ejecutable. Revisa permisos o antivirus. |
Error al abrir con userDataDir | El perfil está en uso por un navegador abierto. Ciérralo por completo antes de ejecutar. |
Timeout 90000ms exceeded al cargar url | La página no terminó de cargar a tiempo. Sube timeout, o abre sin url y navega con Navigate eligiendo otro waitUntil. |
Actividades relacionadas
Sección titulada «Actividades relacionadas»- Navigate — cambiar de URL una vez abierto.
- Attach Browser — retomar más adelante una sesión que ya tienes en una variable.
- Close Browser — cerrar la sesión (modo sin
body). - Configuración del proyecto — navegador y modo sin ventana para todo el proyecto.