Inspección de sesión

Mira cómo depurar sesiones de automatización mediante una interfaz gráfica en tiempo real.

El Inspección de sesión la herramienta es una potente función de depuración de Oxylabs Headless Browser que aprovecha la tecnología VNC (Virtual Network Computing) para proporcionar acceso visual en tiempo real a tus sesiones de automatización del navegador. Esta herramienta crea un puente seguro entre tu instancia de navegador sin interfaz gráfica y una interfaz gráfica que puedes observar y controlar.

¿Cuándo usarla?

Aunque Oxylabs Headless Browser ofrece funciones integradas de sigilo, bypass dinámico de CAPTCHA y otras características, ciertos escenarios requieren observación visual directa para:

  • Diagnosticar problemas complejos que no son evidentes en los registros o mensajes de error

  • Entender el renderizado de la página exactamente como lo ve el navegador

  • Verificar la ejecución correcta de tus flujos de trabajo de automatización

  • Solucionar comportamientos inesperados en tiempo real

Ejemplo de uso

Puedes habilitar la herramienta de Inspección de sesión añadiendo el o_vnc=true parámetro al endpoint de conexión, por ejemplo:

  • Navegador Chrome: wss://username:password@ubc.oxylabs.io?o_vnc=true

  • Navegador Firefox: wss://username:password@ubs.oxylabs.io?o_vnc=true

const {chromium} = require('playwright');

(async () => {
    let page = null;
    let browser = null;

    try {
        // Usa el parámetro o_vnc=true para conectar
        browser = await chromium.connectOverCDP('wss://user:pass@ubc.oxylabs.io?o_vnc=true');
        const ctx = browser.contexts()[0];

        // Crear una nueva página
        page = await ctx.newPage();
        page.on('console', async msg => {
            console.log(`NAVEGADOR [${msg.type()}] ${msg.text()}`);
        });

        // Obtén el ID de sesión usando una sesión CDP
        let sesId = await (await ctx.newCDPSession(page)).send("__session_id");
        // Usa el cliente novnc de UB o cualquier cliente compatible con WebSocket para conectar a VNC
        console.log(`Conectar a VNC: https://vnc.headlesify.io/novnc/?id=${sesId.value}`);

        // Ir a una página
        await page.goto('https://duckduckgo.com');

        // Dormir durante 10 minutos
        await new Promise(resolve => {
            setTimeout(resolve, 6000000);
        });
    }
    catch (e) {
        console.log("Finalizado con error:", e);
    } finally {
        if (page != null) await page.close();
        if (browser != null) await browser.close();
        process.exit(0);
    }
})();

¿Te fue útil?