Anyhunt

API 参考

Anyhunt Web Scraper 完整 API 文档

API 参考

Anyhunt 提供全面的 REST API,用于网页抓取和内容提取。所有接口使用 JSON 格式进行请求和响应。

基础 URL

https://server.anyhunt.app

认证

所有 API 请求需要通过 Bearer Token 认证:

Authorization: Bearer ah_your_api_key

控制台 获取 API Key。

可用 API

核心 API

高级 API

快速开始

以下是一个简单示例:

curl -X POST https://server.anyhunt.app/api/v1/scrape \
  -H "Authorization: Bearer ah_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "formats": ["markdown"]
  }'

响应格式

所有 API 响应遵循标准 HTTP 语义:

成功响应(raw JSON)

{
  // 响应数据
}

错误响应(RFC7807)

{
  "type": "https://anyhunt.app/errors/ERROR_CODE",
  "title": "Error Title",
  "status": 400,
  "detail": "可读的错误信息",
  "code": "ERROR_CODE",
  "requestId": "req_123"
}

通用错误码

错误码状态码描述
UNAUTHORIZED401API Key 缺失或无效
RATE_LIMITED429请求过于频繁
QUOTA_EXCEEDED429月度配额已用完
INVALID_URL400URL 格式无效
URL_NOT_ALLOWED400URL 被 SSRF 防护阻止
PAGE_TIMEOUT504页面加载超时
BROWSER_ERROR500浏览器错误

速率限制

速率限制按 API Key 计算:

套餐请求/分钟并发数
Free102
Basic305
Pro6010
Team12020

达到速率限制时,将收到 429 响应及相关请求头:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1705320600
Retry-After: 30

Webhooks

对于长时间运行的操作(Crawl、Batch Scrape),可以配置 Webhook 接收通知:

{
  "event": "crawl.completed",
  "data": {
    "id": "crawl_abc123",
    "status": "COMPLETED",
    "totalPages": 150,
    "completedPages": 150
  },
  "timestamp": "2024-01-15T10:30:00.000Z"
}

详见各 API 文档了解 Webhook 配置详情。