会话检查

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

会话检查 工具是一项强大的 调试功能 这是 Oxylabs 无头浏览器的一项功能,利用 VNC(虚拟网络计算)技术,为你的浏览器自动化会话提供实时可视访问。该工具在你的无头浏览器实例与图形界面之间创建一个安全桥梁,你可以在该界面中观察并 控制.

什么时候使用它?

虽然 Oxylabs 无头浏览器提供了内置的隐身能力、动态 CAPTCHA 绕过以及其他功能,但某些场景仍需要直接的可视化观察,以便:

  • 诊断日志或错误消息中无法体现的复杂问题

  • 准确理解页面渲染在浏览器中的显示方式

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

  • 实时排查意外行为

使用示例

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

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

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

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

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

    try {
        // 使用 o_vnc=true 参数进行连接
        browser = await chromium.connectOverCDP('wss://user:pass@ubc.oxylabs.io?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(`连接到 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("已完成,但出现错误:", e);
    } finally {
        if (page != null) await page.close();
        if (browser != null) await browser.close();
        process.exit(0);
    }
})();

这有帮助吗?