分开管理创建与操作
使用 REST API 创建浏览器,再通过 CDP 操作页面;会话 ID 用于管理,连接地址用于协议访问。
01 / 产品介绍
AdsCrawl 远程 CDP 浏览器通过 Chrome DevTools Protocol 提供临时云端 Chromium 会话。REST API 负责创建与删除会话,兼容客户端通过返回的连接地址控制运行中的浏览器。
02 / 适用场景
使用 REST API 创建浏览器,再通过 CDP 操作页面;会话 ID 用于管理,连接地址用于协议访问。
连接 Playwright、Puppeteer 或兼容的 CDP 客户端,并检查所需操作与客户端版本的兼容性。
设置支持的空闲和最大会话超时,跟踪活动会话,并删除已完成任务以释放并发容量。
03 / 快速开始
示例环境:Node.js 与 Playwright(npm install playwright)。 先在服务端设置 ADSCRAWL_API_KEY 环境变量。
完整参数与响应说明 →import { chromium } from "playwright";
const base = "https://api.adscrawl.net";
const headers = {
"x-api-key": process.env.ADSCRAWL_API_KEY,
"content-type": "application/json",
};
const res = await fetch(base + "/cdp/sessions", {
method: "POST", headers,
body: JSON.stringify({ idleTimeoutMs: 600000 }),
});
if (!res.ok) throw new Error(await res.text());
const session = await res.json();
try {
const browser = await chromium.connectOverCDP(
session.cdpBaseUrl
);
const page = await browser.contexts()[0].newPage();
await page.goto("https://www.adscrawl.net");
console.log(await page.title());
} finally {
const stopped = await fetch(
base + "/cdp/sessions/" + session.sessionId,
{ method: "DELETE", headers }
);
if (!stopped.ok) throw new Error(await stopped.text());
}API Key 仅保存在服务端。遇到 HTTP 402 请检查额度,遇到 429 请降低并发并退避重试。
05 / FAQ
不是。API Key 用于 REST 会话管理,协议连接使用返回的带令牌地址。
选择应用已支持的客户端。Playwright 和 Puppeteer 提供高级页面 API,原始 CDP 则需要自行处理命令和事件。
使用云浏览器 API 的保存配置能力,不应假设临时 CDP 会话在删除或过期后仍会保留。