用 DeepSeek API 的 Fetch 接口批量抓取网页,最先踩的坑是"成功"不是一个数。按官方文档,一次调用至少有三层:HTTP 200 只代表接口响应了;计费口径上的"成功"要求真正产出结果——Fetch 必须返回网页正文,Search 必须返回非空的结果数组;而抓到的正文能不能用,取决于目标站点是否开放。限制同样是两层:账号级 QPS 为 Search 100、Fetch 25,且 Fetch 额外受目标域名级 QPS 约束。这对给程序调用的接口在 10 月 17 日上线,目前限时免费,北京时间 2026 年 11 月 1 日 00:00 起按次收费。DeepSeek API 文档知乎
判定成功率:先分清 404、403 和"抓到空壳"
Fetch 接口(`POST https://api.deepseek.com/v1/tools/fetch`)只有一个必填参数 `url`,要求是不超过 8192 字符、含 host 的 HTTP/HTTPS 地址,且不能携带用户名或密码,成功时返回 `title` 和 Markdown 格式的 `content`。官方同时提醒,Fetch 的结果受目标站点的可用性和访问策略影响——抓取失败更多是"目标站点不配合",而不是接口挂了。DeepSeek API 文档
HTTP 404 是最容易误判的状态码,官方给出的成因包括 URL 不可用、被站点策略拦截、目标站点返回错误、内容类型不受支持或页面没有可提取的 Markdown 正文;403 则意味着请求被安全策略拒绝。这两类都属于"不修改请求就不要重试"的失败,盲目重试只会浪费时间。DeepSeek API 文档
更隐蔽的是"200 但没内容"。Search 接口的 `need_content` 参数默认关闭,打开后正文仍可能缺失、返回空字符串,需要时再对单个页面补发 Fetch 请求。官方计费规则从反面给出了"有效成功"的定义:请求失败、搜索无结果或超时都不计费,换句话说,只有返回 200 且真正产出内容的调用才是成功调用。知乎DeepSeek API 文档
业务层的"成功"还要再过一道:搜到网页不等于答对,开发者"江小北"实测后指出,链接真实、页面正常的结果里,最关键的条款反而可能被模型跳过,带链接的错误答案比没链接的更让人放松警惕。目标站点的覆盖边界则要靠实测摸清:独立测试者"平凡"10 月 18 日搭建开源测试台跑了 63 题检索,微信公众号和小红书的内容当时无法被直接检索,知乎支持链接检索但正文暂无法通过 Fetch 抓取,微博和今日头条则能正常检索并抓取正文。上线批量抓取任务前,先拿自己的真实 URL 清单跑一轮"200 且正文非空"的比例,这个数字比任何通用评测都可靠。知乎知乎
调用限制:账号级和域名级各有一道闸
限速按账号粒度计算,与用哪个 API Key 无关,多申请几个 Key 分摊并发是无效操作;超过账号级 QPS 限制的请求会收到 HTTP 429 错误码。DeepSeek API 文档
账号级额度之外,Fetch 对目标域名还有单独的 QPS 限制,即使总量远低于 25、集中抓同一个站点也会触发 429,该域名级阈值官方未公布具体数值。做批量抓取的工具作者 Chris 的实践是多篇按间隔排队请求,把域名级限流消化在客户端。DeepSeek API 文档知乎
这套限制与模型调用的并发额度相互独立:Search 和 Fetch 的 QPS 与模型并发各算各的,deepseek-flash 的模型并发为 2500、deepseek-v4-pro 为 500,超过并发限度时同样收到 HTTP 429,模型侧可通过官方工单申请扩容且不增加费用。排障时要先分清 429 来自哪条链路——是 chat 请求打满了模型并发,还是 Fetch 撞了账号或域名级 QPS,两者的退避策略完全不同。DeepSeek API 文档
官方对重试口径写得非常明确:Search 和 Fetch 都是只读请求,408、429、5xx 等待后重试,402 先充值再重试,其余 4xx 如不修改请求就不要重试。服务本身的可用性也不是零风险:10 月 15 日早上 8 点 11 分起,DeepSeek 出现网页转圈、App 白屏、API 报错的故障,持续到下午 1 点 04 分共 5 小时 22 分钟,官方当晚按账号过去 7 天消耗金额以赠金形式全额返还。长任务链路上值得配一层熔断和断点续跑。DeepSeek API 文档知乎
费用怎么算:按"成功"计费,免费期还有最后一周
Search 和 Fetch 按请求次数计费,不按 token 或返回结果条数计费,官方的价格是每 1000 次成功请求 5 元,约 0.005 元/次。`count` 参数取 10 还是 50,都只控制返回的结果条数、不影响单次请求的价格。由于失败与无结果不计费,费用失控的真正来源不是报错重试,而是"重复抓同一个页面"——同批 URL 做本地缓存和抓取去重才是控制成本的第一手段。按 Fetch 25 QPS 理论满负荷推算,一小时最多约 9 万次请求,全部成功计费约 450 元/小时,这个数字适合用来设定预算上限,而不是日常预期。知乎DeepSeek API 文档
计费窗口也在切换:目前通过 DeepSeek Harness、Claude Code、Codex 使用 API 时,服务端的工具调用已经在实际访问 Search/Fetch 接口,这部分暂未计费,11 月 1 日 00:00 起按次收费。也就是说,Agent 类应用哪怕一行代码不改,11 月起也会自动产生抓取费用。DeepSeek API 文档
避坑的核心就三个动作:用"HTTP 200 且正文非空"而不是状态码计数来定义成功率,上线前实测自己目标站点组合的可抓取性,给 429 和超时做按错误码分流的退避重试。这三条都来自官方文档可直接核对的口径,10 月的免费窗口期,正是把每个数字校准到自己业务上的时机。