🎁 Descuento sorpresa: ¡Disfrute del 90 % de descuento en su suscripción!

  • Precios
  • Documentación
ES
Contacto

© 2025 NST LABS TECH LTD. ALL RIGHTS RESERVED

Producto

Navegador antihuellas
Nstbrowser RPA
Omisión de Cloudflare
Browserless
Desbloqueador web

Solución

Navegador antihuellas basado en la nube
Gestión de múltiples cuentas
Raspado web
Detección anti-bots

Recurso

Precios
Descargar
Mercado de RPA
programa de afiliación
Socios
Blog
Notas de lanzamiento

Apoyo

Contacto

Documentación

Legal

Términos
política de privacidad
Política de cookies

ProductoSoluciónRecursoApoyoLegal

ProductoSoluciónRecurso

ApoyoLegal

© 2025 NST LABS TECH LTD. ALL RIGHTS RESERVED

Volver a Blog
Lanzar perfiles de Nstbrowser en Docker
Browserless

Cómo lanzar perfiles de Nstbrowser en Docker?

Aprenda a lanzar perfiles de Nstbrowser en Docker, sincronizar datos entre entornos y automatizar flujos de trabajo usando APIs. Esta guía cubre todo, desde la configuración hasta la ejecución.
Mar 14, 2025Carlos Rivera

En este artículo, exploraremos cómo iniciar perfiles de Nstbrowser en Docker, cubriendo tanto las configuraciones manuales como la automatización basada en API. También demostraremos cómo sincronizar los datos de inicio de sesión entre el cliente y los contenedores Docker, permitiendo una experiencia sin necesidad de iniciar sesión.

¡Empecemos!

Preparación

  1. Visita el sitio web oficial de Nstbrowser y descarga el cliente adecuado para tu plataforma. Sigue las instrucciones de instalación para configurarlo en tu sistema.
  2. Después de instalar el cliente, registra una cuenta e inicia sesión para generar tu clave API única. Esta clave será esencial para realizar solicitudes API más adelante.
generar clave API
  1. Si aún no lo has hecho, instala Docker en tu sistema. Puedes obtener la imagen oficial de Docker de Nstbrowser usando el siguiente comando:
Shell Copy
docker run -it \
  -e TOKEN=xxx \
  -p 8848:8848 \
  -p 5900:5900 \
  --name browserless \
  nstbrowser/browserless:latest

¿Cómo crear e iniciar perfiles en Nstbrowser?

Nstbrowser admite dos tipos de perfiles: Perfiles generales y Perfiles únicos. A continuación, encontrarás pasos detallados para crear e iniciar cada tipo según tus necesidades.

Perfil general

Creación e inicio manual

Navega a la página de creación de perfiles en el cliente Nstbrowser. Personaliza la huella digital del navegador según tus necesidades o utiliza configuraciones predefinidas. Haz clic en "Crear perfil" para crear el perfil.

Crear perfil

Una vez creado el perfil, haz clic en el botón "Iniciar" para iniciarlo.

Iniciar el perfil

Si aparece esta advertencia, haz clic en Descargar ahora. Espera a que se complete la instalación y reinicia el perfil.

advertencia

Creación e inicio basados en API

Recomendamos usar la API v2 para operaciones programáticas. A continuación, se indican los pasos para crear e iniciar un perfil a través de la API.

Crear un perfil usando la API

Nstbrowser proporciona una API CreateProfile. Solicitar esta interfaz creará directamente un perfil para ti. Presta atención a los parámetros necesarios. Usa curl para iniciar la solicitud:

Shell Copy
# reemplaza con tu clave api
curl 'http://localhost:8848/api/v2/profiles/' -X POST \
-H 'Content-Type: application/json' \
-H 'x-api-key: apikey' \
--data-raw $'{"name": "profileCreatedByApiCreateProfile"}'

Respuesta:

JSON Copy
{
    "data": {
        "profileId": "xxxxxx",
        "fingerprintId": "xxxxxx",
        "groupId": "xxxxxx",
        "teamId": "xxxxxx",
        "userId": "xxxxxx",
        "name": "profileCreatedByApiCreateProfile",
        "kernel": 0,
        "kernelVersion": "",
        "kernelMilestone": "132",
        "uaFullVersion": "132.0.6834.83",
        "platform": 0,
        "platformVersion": "13.0.0",
        "saveLocal": false,
        "status": 1,
        "note": ""
    },
    "err": false,
    "msg": "success",
    "code": 200
}

Puedes ver el perfil que acabas de crear usando la API CreateProfile en la página Perfiles del panel.

API CreateProfile

Iniciar perfiles

Se pueden usar las siguientes API para iniciar el Perfil creado:

  • API StartBrowser

Esta interfaz se usa para iniciar el perfil diario creado. El método curl inicia la interfaz de solicitud:

Shell Copy
# reemplaza con tu clave api y profileId
curl 'http://localhost:8848/api/v2/browsers/xxxxxx' -X POST \
-H 'x-api-key: apikey'

Resultado de la respuesta:

JSON Copy
{
    "data": {
        "profileId": "xxxxxx",
        "port": 46300,
        "webSocketDebuggerUrl": "ws://127.0.0.1:browserPort/devtools/browser/xxxxx"
    },
    "err": false,
    "msg": "success",
    "code": 200
}

Puedes ver que el Perfil que creamos a través de la API se ha iniciado correctamente a través de la solicitud de interfaz.

Perfil que creamos
  • API StartBrowsers

Esta interfaz se usa para iniciar en lote los perfiles creados. El método curl inicia la interfaz de solicitud:

Shell Copy
# reemplaza con tu clave api y profileIds
curl 'http://localhost:8848/api/v2/browsers' -X POST \
--header 'Content-Type: application/json' \
-H 'x-api-key: apikey' \
--data-raw '[
    "xxxxxx",
    "xxxxxx"
]

Puedes ver que el perfil que creamos anteriormente se inició correctamente a través de la API de inicio por lotes

API de inicio por lotes
  • API ConnectBrowser

Esta interfaz admite el acceso usando HTTP GET y WebSocket. Si solo deseas iniciar el navegador, usa HTTP GET para acceder. Si deseas conectarte, necesitas usar WebSocket para acceder. Se usa principalmente para:

  1. Conectarse a un navegador en ejecución, necesitas iniciar el perfil de antemano.
  2. Iniciar y conectarse al perfil creado. No necesitas iniciar el perfil de antemano.

A continuación, se muestra cómo acceder a la interfaz usando JavaScript Puppeteer:

JavaScript Copy
import puppeteer from "puppeteer-core";

// tu clave api
const apiKey = 'xxxxxx';
// tu profileId
const profileId = 'xxxxxx';
// punto final de WebSocket del navegador
const browserWSEndpoint = `ws://localhost:8848/api/v2/connect/${profileId}`;

(async () => {
    let browser = null
    try {
        browser = await puppeteer.connect({
            browserWSEndpoint,
            defaultViewport: null, // establece el viewport máximo
            headers: {
                'x-api-key': apiKey,
            }
        });
        const page = await browser.newPage();
        await page.goto("https://nstbrowser.io");
        await page.screenshot({ fullPage: true, path: 'nstbrowser.png' });
    }
    catch (e) {
        console.log(e);
    } finally {
        browser && browser.close();
    }
})();

Podemos ver que el perfil que creamos anteriormente a través de la API CreateProfile se inició correctamente y accedió al sitio web oficial de Nstbrowser.

sitio web oficial de Nstbrowser

Perfiles únicos

Los perfiles únicos no guardan datos de usuario. Los directorios de perfiles se eliminan automáticamente después de cerrar el navegador. Puedes iniciar o conectarte a un perfil único usando la API ConnectOnceBrowser. Así es como se accede a la API usando JavaScript Playwright:

JavaScript Copy
import { chromium } from "playwright";

// tu clave api
const apiKey = 'xxxxxx';
// configuración del perfil único
const config = {
    "name": "onceProfileByConnectOnceBrowser"
};
const query = new URLSearchParams({
    "config": JSON.stringify(config),
});
// punto final de WebSocket de la API `ConnectOnceBrowser` con configuración de inicio
const endpointURL = `ws://localhost:8848/api/v2/connect?${query.toString()}`;

(async () => {
    let browser = null
    try {
        browser = await chromium.connectOverCDP(
            endpointURL,
            {
                headers: {
                    'x-api-key': apiKey,
                }
            });
        const page = await browser.newPage();
        await page.goto("https://google.com");
        await page.screenshot({ fullPage: true, path: 'google.png' });
    }
    catch (e) {
        console.log(e);
    } finally {
        browser && browser.close();
    }
})();

Este perfil único eliminará automáticamente los datos del usuario después de cerrarlo.

perfil único

¿Cómo iniciar el perfil creado por el cliente en Docker?

Paso 1. Crear perfiles e iniciar

Creamos un perfil en el cliente y agregamos la página de inicio de sesión de Google a las URL de inicio. También puedes ingresar otros sitios:

URL de inicio

Para sincronizar los datos del perfil iniciados por el cliente con el contenedor Docker, debes habilitar la sincronización en la nube y la sincronización de cookies en la configuración del grupo:

sincronizar el perfil

Paso 2. Sincronizar datos de inicio de sesión

Haz clic para iniciar el perfil e inicia sesión en Google, luego haz clic para cerrar el navegador y los datos se sincronizarán automáticamente con la nube:

Paso 3. Iniciar el perfil en Docker

  • Ejecutar el contenedor
Shell Copy
# reemplaza xxxxxx con tu clave api
docker run -it \
  -e TOKEN=xxxxxx \
  -p 8848:8848 \
  -p 5900:5900 \
  --name browserless \
  nstbrowser/browserless:latest
  • Iniciar el perfil

Usamos el código en Automatización con JavaScript Puppeteer para acceder al contenedor Docker e iniciar el perfil de la cuenta de Google iniciada sesión en el cliente:

JavaScript Copy
import puppeteer from 'puppeteer';

async function execPuppeteer(browserWSEndpoint) {
  try {
    const browser = await puppeteer.connect({
      browserWSEndpoint: browserWSEndpoint,
      defaultViewport: null,
    });

    const page = await browser.newPage();
    await page.goto('https://myaccount.google.com');
    await page.screenshot({ path: 'google.png' });
    await browser.disconnect();
  } catch (err) {
    console.error(err);
  }
}

// ConnectBrowser: Iniciar y conectarse a un navegador en ejecución o un perfil creado
async function launchAndConnectToBrowser(profileId) {
  const host = 'localhost:8848';
  const browserWSEndpoint = `ws://${host}/api/v2/connect/${profileId}`;
  console.log('browserWSEndpoint: ', browserWSEndpoint);
  await execPuppeteer(browserWSEndpoint);
}

launchAndConnectToBrowser('your profileId').then();

Después de iniciar el perfil, se accederá automáticamente a la página de la cuenta de Google. Debido a que hemos iniciado sesión en la cuenta de Google en el cliente y hemos activado la sincronización en la nube, podemos sincronizar la información de inicio de sesión de la cuenta de Google después de iniciar el perfil en el contenedor docker.

sincronizar la cuenta de Google

Reflexiones finales

Presentamos cómo crear e iniciar un perfil, y demostramos cómo iniciar sesión en el sitio Nstbrowser después de crear e iniciar un perfil con sincronización en la nube habilitada en el cliente, y luego sincronizar correctamente los datos después de iniciar el perfil en el contenedor Docker para lograr el efecto de inicio de sesión sin contraseña.

Este artículo y todas las interfaces se basan en la API v2 de Nstbrowser, requiriendo que el cliente Nstbrowser se actualice a la versión v1.15.4 o superior, y la versión de la imagen de Docker 132-202503101200.v1 o superior

Lecturas adicionales

  • ¿Cómo omitir Cloudfalre Turnstile usando Browserless de Nstbrowser?
  • ¿Cómo omitir el desafío Cloudflare 5S a través de Browserless?
  • ¿Cómo construir un servicio de rastreo en Ubuntu con Nstbrowser?
Más
bypass-http-2
Browserless
¿Qué es la huella digital HTTP/2 y cómo evitarla?
Aprende a evitar la huella digital HTTP/2 en el web scraping con seis métodos poderosos, desde el uso de navegadores reales hasta Browserless en la nube. Permanece indetectable contra las defensas anti-bot modernas.
Jun 03, 2025Carlos Rivera
Cargar extensiones del navegador en Nstbrowser Docker
Browserless
Cómo cargar extensiones de navegador en Nstbrowser Docker?
Aprenda 2 métodos para cargar extensiones en Nstbrowser y los pasos para ejecutarlas en Docker.
Mar 19, 2025Carlos Rivera
Lanzar perfiles de Nstbrowser en Docker
Browserless
Cómo lanzar perfiles de Nstbrowser en Docker?
Aprenda a lanzar perfiles de Nstbrowser en Docker, sincronizar datos entre entornos y automatizar flujos de trabajo usando APIs. Esta guía cubre todo, desde la configuración hasta la ejecución.
Mar 14, 2025Carlos Rivera
Cómo usar Browserless de Nstbrowser para resolver automáticamente Cloudflare Turnstile (2025)
BrowserlessCloudflare BypassHeadless Browser
Cómo usar Browserless de Nstbrowser para resolver automáticamente Cloudflare Turnstile (2025)
Aprenda a omitir Cloudflare Turnstile usando el servicio Browserless de Nstbrowser y Puppeteer. Esta guía le guiará a través de la configuración, la implementación y las ventajas de automatizar tareas de raspado web garantizando el cumplimiento y la eficiencia.
Mar 07, 2025Robin Brown
Cómo usar Browserless de Nstbrowser para evitar el desafío Cloudflare de 5 segundos (2025)
BrowserlessCloudflare BypassHeadless Browser
Cómo usar Browserless de Nstbrowser para evitar el desafío Cloudflare de 5 segundos (2025)
Aprenda a omitir el desafío de 5 segundos de Cloudflare usando el servicio Browserless de Nstbrowser y Puppeteer. Esta guía le guiará a través de la configuración, la implementación y las ventajas de automatizar tareas de raspado web garantizando el cumplimiento y la eficiencia.
Mar 06, 2025Robin Brown
navegador impulsado por IA
Browserless
Browserless: El mejor navegador impulsado por IA para simplificar tus interacciones web
Este artículo explora la potente integración de agentes de IA con Browserless para optimizar y mejorar el raspado web.
Jan 24, 2025Robin Brown
Catálogo