For the complete documentation index, see llms.txt. This page is also available as Markdown.

Headless Browser

Un navegador headless basado en la nube con seguridad adaptativa integrada, gestión de CAPTCHA y Residential Proxies. Pruébalo con ejemplos de código y personalízalo con funciones avanzadas.

Headless Browser te permite ejecutar y controlar instancias remotas para automatización basada en navegador, pruebas y web scraping sin gestionarlas localmente. Ofrece seguridad adaptativa integrada, manejo automático de CAPTCHA, geotargeting, Residential Proxies integradas, grabación de sesiones, sesiones sticky y perfiles persistentes.

Bibliotecas compatibles

Headless Browser funciona con cualquier biblioteca que admita el Chrome DevTools Protocol (CDP), incluidos:

  • Playwright (Python y Node.js)

  • Puppeteer (Node.js)

  • Otros frameworks de automatización compatibles con CDP

Detalles de conexión

Campo
Descripción

Protocolo

wss:// (WebSocket Secure)

Host (Chromium)

hb.oxylabs.io

Autenticación

En la URL, la información de usuario – wss://USERNAME:PASSWORD@host. Debe incluir el token de sufijo del nombre de usuario (p. ej., user_ab12). No se admite la autenticación basada en encabezados.

Transporte

CDP – chromium.connectOverCDP (Playwright) / puppeteer.connect (Puppeteer).

Dominio

oxylabs.io – usado para endpoints de conexión (p. ej., hb.oxylabs.io), el Dashboard (hb.oxylabs.io/dashboard), y la inspección de sesiones (hb.oxylabs.io/novnc).

Límites de tasa

100 sesiones concurrentes, 10 sesión por segundo. Ver más.

Funciones

Oxylabs Headless Browser incluye funciones integradas, nativas de la nube, diseñadas para usarse mediante parámetros de consulta en la URL de tu conexión WebSocket.

Manejo de CAPTCHA

Manejo y monitoreo automáticos de CAPTCHA en tiempo real (predeterminado – desactivado).

Enruta las sesiones a través de países, estados o ciudades específicas.

Emula fingerprints y viewports específicos del dispositivo.

Supervisa sesiones en vivo de Headless Browser.

Grabación de sesión

Graba sesiones del navegador en formato de video.

Sesiones persistentes

Crea y administra instancias de navegador sticky.

Perfiles persistentes

Guarda y restaura cookies/localStorage entre sesiones.

Pasar parámetros

Todas las funciones se habilitan y configuran agregando parámetros de consulta directamente a tu endpoint WebSocket Secure y encadenando varias funciones usando & (&).

Ejemplos de código

A continuación se muestran ejemplos básicos para inicializar una sesión de navegador alojado en la nube:

Nota: Los ejemplos usan USERNAME y PASSWORD solo para facilitar la lectura. En proyectos reales, cárgalos desde variables de entorno (p. ej., process.env.OXYLABS_USERNAME / process.env.OXYLABS_PASSWORD) mediante un .env archivo.

Referencia de parámetros

Parámetro
Descripción
Tipo

p_cc

Geolocalización del país en ISO 3166-1 alpha-2 código de 2 letras (p. ej., US, DE).

cadena

p_state

Geolocalización del estado en minúsculas (p. ej., texas). Anula p_cc si se usan ambos. Lista de estados compatibles.

cadena

p_city

Geolocalización de ciudad, en minúsculas, _ para los espacios (p. ej., new_york). p_cc / p_state obligatorio.

cadena

p_device

Configura fingerprints, viewports y user-agents del dispositivo. Compatible con escritorio (predeterminado) y móvil.

cadena

solve_captcha

Resolución automática de CAPTCHA en tiempo real al cargar páginas. Predeterminado: falso.

booleano

record

Graba el video de la sesión de Headless Browser. Predeterminado: falso.

booleano

record_name

Nombra la grabación para facilitar su búsqueda (^[a-zA-Z0-9_-]{1,64}$).

cadena

session_name

Sesiones sticky – se reconecta al mismo navegador remoto en vivo (^[A-Za-z0-9-]{3,36}$, admite guiones, no guiones bajos). TTL máx. – 24h.

cadena

keep_alive

Mantiene activa la instancia del navegador remoto cuando el cliente se desconecta al establecerse en verdadero. Predeterminado: falso.

booleano

o_profile

Perfiles persistentes – guarda/restaura cookies y localStorage con un perfil con nombre (^[A-Za-z0-9_-]{1,36}$).

cadena

o_profile_save

Perfiles persistentes – fuerza el guardado del perfil durante o al final de la sesión. Predeterminado: falso.

booleano

proxy_resi_ses_id

ID de sesión personalizado para fijar la IP de salida de Residential Proxies entre sesiones (^[A-Za-z0-9]{3,36}$).

cadena

proxy_resi_ses_time

Duración para mantener fijada la IP de salida del proxy residencial en minutos. Mín 1, máx. 1440 (24h).

entero

Configuración recomendada

Optimización del tráfico

El scraping de páginas dinámicas a menudo hace que el navegador descargue recursos innecesarios como medios pesados, scripts de seguimiento, imágenes y fuentes. Esto consume ancho de banda y ralentiza los tiempos de ejecución.

Puedes interceptar y abortar estas solicitudes programáticamente antes de que consuman recursos:

Manejo de errores y reintentos

Los fallos intermitentes de red y el límite de 10 sesiones por segundo hacen que una sola connectOverCDP llamada pueda fallar de forma transitoria. Envuelve la conexión en un reintento con backoff exponencial, y limita cada intento con un tiempo de espera. El siguiente ejemplo usa la API estándar de Playwright:

Limpieza de recursos

Siempre cierra el navegador cuando termines, incluso si tu automatización falla a mitad de camino. Usa un try { ... } finally { ... } bloque para que la limpieza se ejecute en todos los caminos:

Si ocurre una excepción entre connect y close y no limpias, la sesión remota permanece abierta y consume una de tus 100 sesiones concurrentes hasta que se recupere. Las sesiones filtradas bajo carga pueden agotar el límite y bloquear nuevas conexiones.

¿Necesitas habilitar una función?

Algunas funciones de Headless Browser están limitadas de forma predeterminada. Para ajustar tus límites, contacta con soporte de Oxylabs (chat en vivo o email) o tu Dedicated Account Manager:

  • Más perfiles persistentes – aumenta el límite predeterminado de tu cuenta de 5 perfiles guardados.

  • Más sesiones persistentes – aumenta el límite predeterminado de tu cuenta de 5 sesiones persistentes concurrentes.

  • Objetivos restringidos – desbloquea más categorías de objetivos mediante el proceso de KYC.

  • Límites de velocidad más altos – aumenta más allá de 100 sesiones concurrentes / 10 por segundo.

Última actualización

¿Te fue útil?