Skip to content

百度 SERP API:概览

POST /v3/serp/baidu/organic/task_post

百度 SERP API 用于获取指定、地区、设备类型和操作系统下的百度搜索结果。

返回结果与指定的及地区参数相匹。本平台会尽可能准确地模拟指定的搜索地区和搜索引擎,因此返回结果应与任务创建时对应条件下的搜索结果保持一致。

你可以通过返回结果中的 check_url 在无痕模式下访问搜索页面,以验证结果是否符合预期。系统不会考虑用户偏好、搜索历史及个性化因素,因此这些因素不会反映在返回的 SERP 结果中。

> 注意: 由于百度的限制,搜索结果的直接 URL 默认不会返回。如需获取每条搜索结果的直接 URL,请将 get_website_url 设置为 true。启用后,系统会针对每个排名网站额外发起请求,单个任务的费用将乘以 10

支持的设备和操作系统

创建任务时,可以指定需要获取结果的设备类型和操作系统:

  • 移动设备
    • iOS
    • Android
  • 桌面设备
    • Windows
    • macOS

排名字段

百度 SERP API 使用以下字段表示搜索结果排名:

  • rank_group:结果在所属结果分组中的排名。
  • rank_absolute:结果在整个 SERP 页面所有中的绝对排名。

两的区别在于:rank_group 只在同类结果中计算排名,而 rank_absolute 会跨所有 SERP素计算排名。

百度 SERP 功能

百度 SERP API 提供以下三种数据获取功能:

Regular

Regular 功能用于获取指定、搜索引擎和地区下的前 10 条自然搜索结果及付费搜索结果。

Advanced

Advanced 功能用于获取指定、搜索引擎和地区下的前 10 条搜索结果,并返回更多 SERP素,例如:

  • images:图片结果
  • local_pack:本地结果
  • map:地图结果
  • related_searches:搜索
  • video:视频结果

HTML

HTML 功能用于获取指定、搜索引擎和地区对应的原始 SERP HTML 页面。

请求方式

百度 SERP API 支持 Standard(标准) 数据获取方式。

标准方式需要分别发起 POST 和 GET 请求,系统完成数据采集后,再通过 GET 请求获取结果。该方式的成本相对较低。

创建任务时,也可以指定以下回调参数:

  • pingback_url:任务完成后,本平台向指定地址发送通知。
  • postback_url:任务完成后,本平台将结果发送到指定地址。

使用 postback_url 时,还需要指定要执行的数据获取功能:

  • regular
  • advanced
  • html

标准方式的任务流程

如果使用标准方式,且未设置 pingback_urlpostback_url,可以按以下流程获取数据:

  1. 通过任务提交接口创建任务。
  2. 通过 Tasks Ready 接口获取已完成但尚未领取的任务 ID。
  3. 通过 Task GET 接口,根据任务 ID 获取任务结果。

请求限制

  • P平台限流以认证说明中的 30/60/120 次/分钟规则为准**。
  • 每次 POST 请求最多 100 个任务
  • 如需提高调用限制,请联系平台支持团队。

优级与计费

Standard 方法支持两种任务优级,不同优级对应不同的执行速度和费用:

  1. Normal priority:普通优级
  2. High priority:高优级

以下参数会增加任务费用:

  • get_website_url
  • 大于 10 的 depth

如果同时使用多个计费参数,最终费用将各参数对应的费用系数叠加计算。

费用计算

text
cost = B × G × (D / 10)

  • B:所选方法和优级对应的基础费用。
  • G:当 "get_website_url": true 时为 10,否则为 1
  • Ddepth 值向上取整到下一个百位后的数值。

扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

基本请求示例

以下示例展示标准方式下的任务提交格式。POST 请求体为 JSON 数组。

bash
curl --request POST \
  --url https://api.seermartech.cn/v3/serp/baidu/organic/task_post \
  --header 'Authorization: Bearer smt_live_YOUR_KEY' \
  --header 'Content-Type: application/json' \
  --data '[
    {
      "keyword": "SEO",
      "location_code": 2156,
      "language_code": "zh-CN",
      "device": "desktop",
      "os": "windows",
      "depth": 10,
      "get_website_url": false
    }
  ]'

的地区编码、请求参数和返回字段请参考百度地区列表及对应接口文档。

##测试

你可以通过沙盒环境测试百度 SERP API。

实用场景

  • 监控排名:定期获取百度指定地区和设备下的 SERP 结果,评估网站自然排名变化和 SEO 优化效果。
  • 对比移动端与桌面端结果:分别抓取不同设备及操作系统下的搜索结果,识别移动端与桌面端排名差异。
  • 分析 SERP 页面结构:通过 Advanced 功能获取图片、本地结果、地图、视频和搜索等,优化在多种搜索展现位中的覆盖率。
  • 批量追踪竞品结果:批量提交任务并获取排名网站信息,分析竞争对手在百度搜索结果中的。
  • 获取原始搜索页面:使用 HTML 功能保存指定的 SERP 页面,用于搜索结果审计、页面结构解析和历史数据留档。

统一入口:官网 · LLM API · 控制台