- HTTP 错误:请求本身失败。API 返回 4xx 状态码,不会运行任何任务
- 记录错误:请求成功,但某个输入无法抓取。失败的记录会在结果中带有
error_code字段
Scraper API 的 HTTP 错误是什么意思?
Scraper API 的POST /datasets/v3/trigger 和 POST /datasets/v3/scrape 会返回以下 HTTP 错误。
除非某行注明了具体端点,
/trigger 和 /scrape 返回的消息相同。validation_error 和 parse_error 为 JSON 响应体,其他消息均为纯文本。
频繁收到 429 错误会怎样?
任何 IP 在 5 分钟内收到 25 次及以上 429 响应,就会被 Bright Data 封禁。被封禁的 IP 的所有 API 请求都会被拦截,直到 Bright Data 支持团队解除。 429 是要求放慢速度的信号,而不是立即重试的信号:- 收到 429 后立即停止发送新请求。
- 等待
Retry-After标头指定的秒数。如果没有该标头,按 2、4、8、16、32 秒退避。 - 如果 429 响应持续出现,请降低并发。
Scraper API 的记录错误是什么意思?
记录错误表示 Scraper API 任务已运行,但某个输入没有返回数据。只有在请求中设置include_errors=true 时,失败的记录才会出现在结果中。请根据 error_code 字段进行分支处理,而不是依赖自由文本的 error 消息,因为消息文本会随爬虫更新而变化。
Bright Data 不对失败的记录收费。
以下是在
POST /datasets/v3/scrape 中设置 include_errors=true 时返回的 dead_page 记录。请求本身返回 HTTP 200:
input,便于将错误与您发送的 URL 对应起来。完整的记录错误代码列表请参见 Scraper Studio 错误代码。
空结果算错误吗?
不算。空结果([])表示任务没有返回数据,不是 HTTP 错误。要查看某个输入为何没有返回数据,请带上 include_errors=true 重新发送请求,并查看每条记录的 error_code。