会话检查

查看如何通过实时图形界面调试自动化会话。

会话检查 工具是一个强大的 调试功能 Oxylabs 解锁浏览器,利用 VNC (Virtual Network Computing) 技术提供对浏览器自动化会话的实时可视访问。该工具在无头浏览器实例与您可以观察和 控制.

何时使用?

尽管 Oxylabs 解锁浏览器提供内置隐身功能、动态 CAPTCHA 绕过和其他功能,但某些场景需要直接目视观察以:

  • 诊断日志或错误信息中未显现的复杂问题

  • 精确理解浏览器所见的页面渲染

  • 验证自动化工作流的正确执行

  • 实时排查意外行为

使用示例

您可以通过在连接端点添加 o_vnc=true 参数来启用会话检查工具,例如:

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

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

    try {
        // 使用 o_vnc=true 参数进行连接
        browser = await chromium.connectOverCDP('wss://user:[email protected]?o_vnc=true');
        const ctx = browser.contexts()[0];

        // 创建新页面
        page = await ctx.newPage();
        page.on('console', async msg => {
            console.log(`BROWSER [${msg.type()}] ${msg.text()}`);
        });

        // 使用 CDP 会话获取会话 ID
        let sesId = await (await ctx.newCDPSession(page)).send("__session_id");
        // 使用 UB novnc 客户端或任何支持 WebSocket 的客户端连接到 VNC
        console.log(`Connect to VNC: https://vnc.headlesify.io/novnc/?id=${sesId.value}`);

        // 转到某个页面
        await page.goto('https://duckduckgo.com');

        // 暂停 10 分钟
        await new Promise(resolve => {
            setTimeout(resolve, 6000000);
        });
    }
    catch (e) {
        console.log("Finished with error:", e);
    } finally {
        if (page != null) await page.close();
        if (browser != null) await browser.close();
        process.exit(0);
    }
})();

最后更新于

这有帮助吗?