什么是 Scraping API?
Scraping API 由 55 Tech 提供,可将您的 HTTP、浏览器渲染、WebSocket 和 AMQP 请求通过由 80 多个地理分布式代理节点组成的网络进行路由。API 会在数秒内自动识别每个目标最可靠的代理节点,让您的请求立即变得更加成功,无需自行管理代理。 您可以做什么:- HTTP 抓取 — GET/POST/PUT/PATCH/DELETE,完全控制请求头、请求体和 Cookie
- 浏览器渲染 — 支持 JavaScript 渲染的抓取,包含 Cookie、截图和自定义 JS 执行
- WebSocket 中继 — 双向帧中继(Socket.IO、SignalR、Centrifugo、GraphQL-WS、原生 WebSocket)
- AMQP 消费者 — 通过 Server-Sent Events (SSE) 流式传输 RabbitMQ 消息
- 地理定向 — 将请求固定到特定国家或单个代理节点
- 代理链接 — 通过您自己的代理路由请求,获得额外的 IP 灵活性
- 响应验证 — 验证渲染页面中是否存在预期内容,缺失时自动在不同节点重试
- 封锁检测 — 当检测到访问限制时,响应中包含
meta.blocked标志
基础 URL
身份验证
通过X-API-Key 请求头或(对于 WebSocket/AMQP)apiKey 请求体字段传递您的 API 密钥。详见 Authentication。
端点
| Endpoint | Method | Auth | Description |
|---|---|---|---|
/fetch | GET, POST, PUT, PATCH, DELETE | Required | 通过代理网络代理 HTTP 请求 |
/browser | GET | Header | 支持 JavaScript 渲染的抓取(Cookie、截图、JS 执行) |
/browser/stream | GET | Header | 实时浏览器会话 — 流式传输网络、WebSocket、DOM 事件(SSE) |
/ws | WebSocket | In connect message | 双向 WebSocket 中继 |
/amqp | POST | In body or header | AMQP/RabbitMQ 消费者中继(SSE 流) |
/usage | GET | Required | 按密钥的使用指标(请求数、字节数、热门域名) |
/network/agents | GET | Required | 列出所有代理节点及其标识、名称、国家 |
/network/status | GET | Required | 网络概况(节点总数、每个国家的节点数) |
/network/geo | GET | Required | 按国家分组的代理节点 |
/network/health/{domain} | GET | Required | 按代理节点查看域名的健康状态 |
/debug/pick | GET | Required | 预览将选择哪个代理节点 |
/healthz | GET | No | 存活探针 |
控制请求头
这些请求头用于控制路由,在转发到目标之前会被剥离:| Header | Aliases | Description | Example |
|---|---|---|---|
X-Target-URL | — | 目标 URL(无需编码,推荐方式) | https://example.com/?foo=bar |
X-Geo | X-Geo-CC, X-Geo-Strict, X-CC, X-Country | 限制到特定国家(逗号分隔的 ISO 代码) | US,DE,AT |
X-Expect-JSON | — | 提示目标响应为 JSON | 1 |
X-Agent | — | 通过标识路由到特定代理节点,或逗号分隔列表 | de1, de1,at5,us3 |
X-Timeout | — | 覆盖请求超时时间(秒) | 60 |
速率限制
速率限制按 API 密钥执行:- 默认:每秒 10 个请求
- WebSocket 连接在建立时消耗 1 个令牌(非按帧计费)
429 及以下响应头:
GET /usage 查看当前使用情况。
抓取响应格式
所有 HTTP 抓取响应遵循以下结构:| Field | Description |
|---|---|
meta.status | 目标返回的 HTTP 状态码 |
meta.final_url | 重定向后的最终 URL |
meta.http_version | 使用的 HTTP 版本(例如 HTTP/2) |
meta.elapsed_ms | 往返时间(毫秒) |
meta.blocked | 如果在响应中检测到访问限制则为 true |
meta.agent.id | 处理请求的节点(例如 scraping-de1) |
meta.bytes | 响应体大小(字节) |
raw | 响应体文本(非 JSON 时) |
raw_json | 解析后的 JSON 对象(响应为有效 JSON 时,否则为 null) |
后续步骤
Authentication
设置您的 API 密钥。
Quickstart
发送您的第一个代理请求。
Browser
使用真实浏览器渲染 JavaScript 页面。