Search: #浏览器自动化

  1. 深入浅出 Chrome DevTools Protocol (CDP):浏览器自动化的幕后功臣当你在 Chrome 中按下 F12 打开开发者工具,查看网络请求、调试 JS 代码或模拟手机时,你是否好奇过这个面板是如何与浏览器核心进行通信的?答案就是 CDP(Chrome DevTools Protocol,Chrome 开发者工具协议)

    深入浅出 Chrome DevTools Protocol (CDP):浏览器自动化的幕后功臣

    当你在 Chrome 中按下 F12 打开开发者工具,查看网络请求、调试 JS 代码或模拟手机时,你是否好奇过这个面板是如何与浏览器核心进行通信的?

    答案就是 CDP(Chrome DevTools Protocol,Chrome 开发者工具协议)。它是所有 Chromium 系浏览器(包括 Chrome、Edge、Brave、Arc 等)对外的控制接口。无论是开发者面板本身,还是 Puppeteer、Playwright 等自动化测试框架,甚至是最新的 AI 浏览器 Agent,底层都依赖 CDP。

    什么是 CDP?

    CDP 是一个基于 JSON 的通信协议,通常通过 WebSocket 传输。它将浏览器的控制权划分为多个不同的“域”(Domains):

    Page:负责控制页面导航、截屏等。
    Network:观察和拦截网络请求与响应。
    Runtime:执行 JavaScript 代码并获取控制台输出。
    Input:模拟底层的鼠标、键盘和触摸输入。
    Target:发现并连接到不同的页面、Iframe 或 Service Worker。

    为什么直接操作原生 CDP 非常困难?

    虽然发送 JSON 指令看起来很简单,但维护浏览器状态却极其复杂:

    1. 动态生命周期:页面导航会销毁旧的 JavaScript 执行上下文并创建新的上下文。一旦发生跳转,之前的对象 ID 和引用都会失效。
    2. 多进程架构(Site Isolation):为了安全,浏览器会将跨站点的 Iframe 放在不同的渲染进程中。在 CDP 中,这意味着它们会被作为不同的 Target 暴露,你需要自己管理复杂的 Session 树。
    3. 协议演进快:CDP 的方法会随着 Chromium 的更新而频繁变动,维护兼容性成本极高。

    因此,在实际开发中,更推荐使用 Playwright 或 Puppeteer 这样成熟的库。它们帮我们处理了繁琐的等待、定位和生命周期管理,只在需要更底层能力时才向外暴露 CDP 会话。

    理解 CDP 的工作原理,能让我们在构建浏览器自动化工具或浏览器 AI Agent 时,做出更合理的架构设计。

    原文链接:https://x.com/kylejeong/status/2078196340216185127

    #浏览器自动化 #Chrome #CDP #开发者工具 #Web开发

  2. Steel:为 AI Agent 打造的开源云端浏览器基础设施Steel 是一个开源的浏览器 API,用来在云端按需启动并控制“浏览器集群”,让 AI Agent、自动化脚本把能力真正带到网页上运行

    Steel:为 AI Agent 打造的开源云端浏览器基础设施

    Steel 是一个开源的浏览器 API,用来在云端按需启动并控制“浏览器集群”,让 AI Agent、自动化脚本把能力真正带到网页上运行。

    它适合做什么?

    • 大规模网页抓取与数据采集(也支持更稳定的反爬配置)
    • 自主 Web Agent(下单、订票、填写表单等真实操作流程)
    • 模型训练数据采集、AI 购物助手、RPA/销售自动化、QA 测试、客服自动化

    核心能力概览

    • Sessions API:一行调用启动浏览器会话
    • 自动 CAPTCHA 处理:减少流程中断
    • 代理与指纹控制:降低被识别为机器人的概率
    • 快速启动:平均会话启动时间低于 1 秒(同区域更快)
    • 长会话:单个会话最长可跑 24 小时
    • 上下文复用:保存/注入 Cookies 与本地存储,续跑更顺畅
    • 低改动迁移:Puppeteer/Playwright/Selenium 通过少量改动即可上云
    • 可观测性:提供会话查看器,支持实时/录制回放调试
    • 安全登录:帮助自动化访问需要登录的站点

    价格与开源

    • 提供免费档起步(按浏览器小时/代理带宽/CAPTCHA 计量),也有从个人到企业的多档套餐
    • 项目开源,可本地运行或用 Docker 自托管(官方 GitHub 仓库提供)

    原链接:https://steel.dev/
    #浏览器自动化 #AI代理 #Web抓取 #开源工具 #云基础设施 Steel | Open-source Headless Browser API

1px