Skip to main content
通过 Chrome DevTools Protocol (CDP) 将 Playwright 或 Puppeteer 连接到专用云浏览器,以进行超越单页获取的多步骤自动化。AdsCrawl 在你配置的住宅代理后配置真实的 Chromium 实例,返回一个 cdpBaseUrl 供你直接连接,并且仅在会话处于活动状态时计费。

完整自动化流程

1

创建 CDP 会话

发送 POST /cdp/sessions 请求并携带你所需的浏览器设置。API 返回 sessionId 和 cdpBaseUrl,后者包含嵌入的数据令牌。
响应:
2

使用 cdpBaseUrl 连接 Playwright

将 cdpBaseUrl 直接传递给 chromium.connectOverCDP()。Playwright 处理 WebSocket 握手,你无需手动构建任何 URL。
3

自动化:导航、点击、填写、等待

使用完整的 Playwright API,包括 page.goto()、page.fill()、page.click()、page.waitForSelector() 等。浏览器运行在 AdsCrawl 的基础设施中,通过你配置的代理路由。
4

收集你的结果

读取 DOM 内容、截取屏幕截图、捕获网络响应,或导出 cookies 和存储,满足你的自动化需求。
5

关闭浏览器并删除会话

调用 browser.close() 释放 Playwright 的连接,然后发送 DELETE /cdp/sessions/:sessionId 终止云浏览器并停止计费。

TypeScript 示例

会话限制和 429 错误

每个 API 密钥有最大并发 CDP 会话数限制。达到限制后尝试创建新会话将返回 429:
列出你的活动会话以检查创建新会话前正在运行什么:
删除任何不再需要的会话,然后重试。

会话超时

设置 idleTimeoutMs 以在一段时间不活动后自动终止会话。这可以防止自动化在到达清理步骤之前崩溃时产生失控的费用。超过服务器上限的值将自动被钳制。
将 maxSessionMs 用作长时间自动化运行的硬性挂钟限制。两个超时都在服务器端强制执行,无需客户端心跳保活。

数据令牌安全

cdpBaseUrl 包含一个数据令牌,授予对你的浏览器会话 CDP WebSocket 的直接访问权限。将其视为凭证处理:切勿记录它,切勿将其嵌入客户端代码,切勿将其包含在出现在浏览器历史中的 URL 中。仅限服务器端使用。

browserSettings 参考

string
托管代理区域。"GLOBAL" 从 15 个热门区域中选择。两位字母代码(例如 "US"、"DE")优先使用可信代理并动态回退。不能与 proxy 组合使用。
object
浏览器窗口大小,例如 { "width": 1440, "height": 900 }。
"random" | "custom"
设置为 "random" 以获得服务器选择的真实 User-Agent 字符串。
"windows" | "macos"
随机 User-Agent 选择的操作系统。默认为 "windows"。
string
浏览器区域设置,例如 "en-US"。
string
IANA 时区 ID,例如 "America/New_York"。
cookies[]
在任何导航之前注入浏览器上下文的 cookies。
fingerprint
浏览器指纹设置。省略时,canvas 和 webGlImage 默认为 real;其他信号使用连贯的随机化配置文件。
proxy
自定义代理配置。不能与 countryCode 组合使用。