本文档介绍 豆包搜索网页解析能力接口的输入输出参数。调用该接口可获取url对应网页的内容,您可根据这些数据适配项目使用。
- 付费调用仅支持按量后付费,不支持订阅套餐,也不消耗订阅套餐额度。
- Fetch 与豆包搜索共享每月 500 次免费额度,每次 Fetch 使用扣减 1 次。开通付费服务后,仍优先使用剩余免费额度;免费额度耗尽后,如需继续调用,请确认已开通 Fetch 按量后付费服务。
Fetch 可复用在豆包搜索控制台创建的按量后付费 API Key,无需为 Fetch 单独创建 Key。订阅套餐 API Key 不支持调用 Fetch。API Key 的获取及认证格式可参考豆包搜索 Custom版 APIKey接入说明。 获取 API Key
- 已有通过豆包搜索控制台创建的按量后付费 API Key 时可直接复用;如尚未创建,请填写名称并创建 API Key。
- 需要付费调用时,请在豆包搜索控制台开通 Fetch 按量后付费服务。
说明:请妥善保存 API Key,建议通过环境变量读取,不要将其直接写入代码。
签名构造
使用 API Key 认证时,在 HTTP 请求头中添加 Authorization:
Authorization: Bearer <API_KEY>
请求体采用 JSON 格式,网页地址通过 Url 字段传入。
以下示例适用于 Bash。将 YOUR_API_KEY 替换为您的 API Key,并将 Url 替换为需要解析的网页地址。示例中的网页地址仅用于展示请求格式。
export API_KEY='YOUR_API_KEY'
curl --request POST 'https://open.feedcoopapi.com/search_api/fetch' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer ${API_KEY}" \
"Url": "https://www.example.com/article"
Action、Version、Service 和 Region 为响应元信息,无需写入 JSON 请求体。示例中的值不作为这些字段在所有接入方式下固定返回的约定。
以下字段位于 Result 对象内,仅在 Result 非空时读取。表中“必须”表示该对象存在时字段是否必须返回。
以下字段位于 Result.Data 对象内。
说明:表中的类型表示字段有值时的类型。以下示例使用 null 表示未获取到的可选信息。接入时建议兼容字段缺失或值为 null 的情况;使用 ContentText 前,还应检查是否为空字符串。网页访问成功不代表一定能够解析到正文。
以下示例用于说明响应结构,字段值以实际返回为准。
目标网页访问成功,返回解析得到的网页标题、发布时间和正文。
"RequestId": "20260904153000A1B2C3D4E5F678901234",
"Version": "2025-01-01",
"Service": "volc_torchlight_api",
"Url": "https://www.example.com/article",
"PublishTime": 1788496200,
"ContentText": "示例网页正文内容"
"LogId": "20260904153000A1B2C3D4E5F678901234"
接口调用正常完成,但目标网页返回 404(网页不存在)。该状态位于 Result.Data.StatusCode,不属于 ResponseMetadata.Error 所表示的接口错误。本例未解析到标题、发布时间和正文,相应字段为 null。
"RequestId": "20260904153100A1B2C3D4E5F678901235",
"Version": "2025-01-01",
"Service": "volc_torchlight_api",
"Url": "https://www.example.com/not-found",
"LogId": "20260904153100A1B2C3D4E5F678901235"
请求中的网页地址不合法时,接口返回错误码及错误描述,Result 为 null。
"RequestId": "20260904153200A1B2C3D4E5F678901236",
"Version": "2025-01-01",
"Service": "volc_torchlight_api",
"Message": "Invalid URL. Please provide a valid HTTP or HTTPS URL."
- 仅解析网页的静态内容,不执行 JavaScript。依赖 JavaScript 动态加载的内容可能无法获取。
- 每次请求仅支持一个完整的 HTTP 或 HTTPS 网页地址。
- 网页正文最多返回 50000 个字符;未解析到的标题、发布时间或正文为空。
- 接口请求频率上限以控制台显示为准。超过限制时,请降低请求频率后重试。
- robots 协议与访问规则:网页抓取受目标网站 robots 协议及访问合规校验限制。未通过校验时,接口返回错误码 10413,请更换 URL,不建议对同一 URL 重复请求。
- 访问权限:请遵守目标网站的服务条款和访问规则,确保具有合法的访问及自动化获取依据。不得非法绕过登录验证、付费限制、验证码或其他访问控制,也不得利用本服务探测或访问未获授权的内网地址和系统。
- 版权与后续用途:网页公开可访问或未标注版权声明,不代表可自由使用。对于包含版权声明、禁止转载或其他使用限制的网页,请遵守相应要求。将解析结果用于转载、传播、商业使用或模型训练等用途时,应确认相应的合法依据和授权范围;需要取得授权的,应事先取得。接口返回内容不构成相应授权。
- 抓取行为与使用目的:请合理控制对目标网站的请求频率和并发量,不得干扰其正常运行,不得规避访问限制、实施网络攻击,或利用本服务从事非法获取、提供、传播数据等违法活动。
- 数据权益与公平竞争:不得通过欺诈、胁迫、破坏技术管理措施等不正当方式获取或使用其他经营者合法持有的数据,损害其合法权益、扰乱市场竞争秩序。
- 结果保存与对外提供:请按实际用途妥善管理解析结果,履行适用的安全保护、保存期限及删除义务。向第三方或境外提供涉及个人信息、重要数据的解析结果时,应满足相应法律要求。服务的使用还应遵守《火山引擎服务条款》及其他适用协议。
请先检查 ResponseMetadata.Error,再读取 Result.Data。两处信息分别表示接口调用结果和目标网页状态:
- 接口调用失败:ResponseMetadata.Error 返回错误信息,Result 为 null。请按下表排查,不要继续读取 Result.Data。
- 目标网页访问异常:例如目标网站返回 403(拒绝访问)、404(网页不存在)或 500(服务器错误),对应状态通过 Result.Data.StatusCode 返回。这与接口因合规校验拒绝抓取的情况不同,后者通过错误码 10413 返回。
- 未获取到正文:即使目标网页访问成功,ContentText 也可能为空。请检查正文是否存在,再进行后续处理。
Fetch 的免费额度与豆包搜索共享,搜索调用也会消耗该额度。遇到额度不足的错误时,请检查共享额度余量及 Fetch 付费服务的开通状态;订阅套餐额度不能用于 Fetch。
建议仅对临时异常进行有限次数的重试:内部错误或抓取失败可稍后重试;请求频率超过限制时先降低频率。参数、权限、额度或合规问题应先按错误码处理,避免重复发送相同请求。
如需协助排查,请提供请求时间、错误码及 ResponseMetadata.RequestId。Result 非空时可同时提供 Result.LogId;Result 为 null 时,可补充响应头中的 X-Tt-Logid(如有)。请勿提供 API Key。