登录

概述

每个 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 吧。