crawlbase文档
登录

概述

每个 Crawlbase 账号都有两个 token,在您注册时自动生成。两个 token 都对同一账号进行身份验证并共享相同配额,只是通过不同的基础设施路由请求。

Normal token
默认
用于针对 API 和静态页面的常规 HTTP 请求。速度最快,成本最低。除非需要 JavaScript 渲染,否则请使用此 token。
JavaScript token
JS
将请求路由到真实的无头 Chrome 实例。适用于 SPA、无限滚动以及任何在客户端渲染内容的网站。
查看您的 token

注册后即可在控制台中查看这两个 token。它们形如 aBcD1234efGh5678:约 22 个字母数字字符。

如何进行身份验证

在每个请求中,将您的 token 作为 token 查询参数传入。这就是全部的身份验证方案。

GEThttps://api.crawlbase.com/?token=YOUR_TOKEN&url=...
curl 'https://api.crawlbase.com/?token=YOUR_TOKEN&url=https%3A%2F%2Fexample.com'
from crawlbase import CrawlingAPI

# Pass your token at construction; reuse the client across requests
api = CrawlingAPI({'token': 'YOUR_TOKEN'})
res = api.get('https://example.com')
const { CrawlingAPI } = require('crawlbase');

const api = new CrawlingAPI({ token: process.env.CRAWLBASE_TOKEN });
const res = await api.get('https://example.com');
require 'crawlbase'

api = Crawlbase::API.new(token: ENV['CRAWLBASE_TOKEN'])
res = api.get('https://example.com')
 getenv('CRAWLBASE_TOKEN')]);
$res = $api->get('https://example.com');
package main

import (
    "os"
    "github.com/crawlbase/crawlbase-go"
)

func main() {
    api := crawlbase.NewCrawlingAPI(os.Getenv("CRAWLBASE_TOKEN"))
    res, _ := api.Get("https://example.com")
    _ = res
}

选择合适的 token

快速决策树:

网站类型Token原因
REST/GraphQL APINormal已返回 JSON,无需渲染
服务端渲染的 HTML(Wordpress、传统电商)Normal内容已包含在初始响应中
SPA(React/Vue/Angular/Svelte)JavaScript初始 HTML 为空;需要执行 JS
无限滚动、懒加载网格JavaScript需要滚动/等待才能填充内容
带有机器人挑战的网站(Cloudflare 等)JavaScript需要浏览器指纹才能通过

如果不确定,先尝试 Normal。如果响应中缺少您在浏览器中能看到的内容,再切换到 JavaScript。

安全与轮换

请像对待密码一样对待 token。不要将其提交到版本控制中,不要粘贴到工单里,如果怀疑泄露,请及时轮换。

  • 使用环境变量:切勿将 token 硬编码到源文件中。
  • 从控制台轮换:「Reset token」按钮会生成新值并立即使旧值失效。
  • 每个环境使用独立的 token:将开发环境与生产环境放在不同的账号下,这样其中一个泄露不会影响另一个。
  • 切勿在客户端暴露 token:Crawlbase 调用必须从您的后端发起。出现在浏览器 JavaScript 中的 token 等同于落入所有人之手。
不要将 token 下发到浏览器

浏览器端的 token 会通过 DevTools、网络日志、source map 以及共享截图泄露。请始终通过您自己的后端代理 Crawlbase 调用。

身份验证相关错误

如果您的 token 出现问题,将会收到以下响应之一:

401 Unauthorized
auth
Token 缺失、格式错误或已被重置。请仔细核对该值,并确认您为该请求类型使用了正确的 token。
402 Payment Required
quota
账号额度已用尽或试用期已结束。请在控制台充值。
403 Forbidden
auth
Token 有效,但无权访问此产品(例如,在仅支持 JS 的 endpoint 上使用了 Normal token)。

完整的状态码列表,请参阅 Status Codes

下一步

您的 token 每秒可处理的请求数量。
Crawlbase 返回的每个状态码及其含义。
现在您已经可以进行身份验证了,开始学习 API 吧。