Skip to content

Yahoo 实时高级 SERP

POST /v3/serp/wp/organic/live/advanced

本接口用于实时获取 Yahoo 搜索结果页(SERP)的高级结构化数据。结果会根据指定的地理位置、语言、设备及操作系统返回,自然结果、广告、图片、视频、购物、精选摘要、本地结果、新闻、搜索等 SERP素。

请求体使用 UTF-8 编码的 JSON 数组格式。实时接口单次请求平台限流以认证说明中的 30/60/120 次/分钟规则为准。

每次请求均会产生费用;当请求需要抓取多个结果页时,将按抓取的 SERP 页数计费。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

请求参数

字段类型说明
urlstring搜索请求的直接 URL。本接口会尝试从 URL 中解析参数。该方式处理复杂,且 URL 中准确语言和地区信息,通常建议优使用 keyword、位置和语言参数。示例:https://search.yahoo.com/search?p=rank+checker&n=100&vl=lang_en&vc=us&ei=UTF-8
keywordstring搜索,最长 700 个字符。%## 会被解码,+ 会被解码为空格。如本身 %,应写为 %25;如需保留 +,应写为 %2B
location_namestring条件填搜索地区名。未提供 location_codelocation_coordinate 时填;使用该字段后无需再传位置字段。示例:London,England,United Kingdom
location_codeinteger条件填搜索地区代码。未提供 location_namelocation_coordinate 时填;使用后无需再传位置字段。示例:2840
location_coordinatestring条件填GPS 坐标,格式为 latitude,longitude,radius。未提供 location_namelocation_code 时填。纬度、经度最多 7 位小数;radius 范围为 199.9199999。示例:53.476225,-2.243572,200
language_namestring条件填搜索语言名。未提供 language_code 时填。示例:English
language_codestring条件填搜索语言代码。未提供 language_name 时填。示例:en
devicestring设备类型:desktopmobile。默认:desktop
osstring操作系统。device=desktop 时可选 windowsmacos,默认 windowsdevice=mobile 时可选 androidios,默认 android
se_domainstring搜索引擎域名。系统会根据位置和语言自动选择,也可手动指定,例如 au.search.yahoo.comuk.search.yahoo.comca.search.yahoo.com
depthinteger需要解析的 SERP 结果数量。默认 6,最大 200。Yahoo 单页结果可能少于 10 条,设置更大的值可能触发多页抓取和额外费用。
max_crawl_pagesinteger最大抓取搜索结果页数。默认 1,最大 100。该参数与 depth合使用。
targetstring返回与指定域名、子域名或页面匹的结果。域名或子域名不可 https://www.url 字段的 SERP素会参与匹。支持 _ 通符。
search_paramstring搜索请求的附加参数。
stop_crawl_on_matcharray停止继续抓取的目标规则数组,最多 10 个对象。命中后,响应将返回截至该目标为止的结果。计费覆盖从开始抓取至满足停止条件期间的 SERP 页面。
stop_crawl_on_match[].match_valuestring条件填匹目标值;当指定 stop_crawl_on_match 时填。可为域名、子域名或通符模式。域名不可带协议。示例:example.com/blog/post-*
stop_crawl_on_match[].match_typestring条件填匹类型;当指定 stop_crawl_on_match 时填。可选:domainwith_subdomainswildcard
tagstring自定义任务标识,最长 255 个字符。返回结果中的 data.tag 会保留该值,便于请求与结果。

target 匹规则

示例匹范围
example.com网站首页 URL,例如 https://example.comhttps://www.example.com/
example.com*指定域名下的页面。
*example.com*指定主域名及子域名、页面。
*example.com任意子域名下的首页。
example.com/example-page精确匹指定 URL。
example.com/example-page*匹以指定字符串开头的 URL。

请求示例

curl

bash
curl --location --request POST \
  "https://api.seermartech.cn/v3/serp/wp/organic/live/advanced" \
  --header "Authorization: Bearer smt_live_YOUR_KEY" \
  --header "Content-Type: application/json" \
  --data-raw '[
    {
      "keyword": "hotels in New York",
      "language_code": "en",
      "location_code": 2840,
      "device": "mobile",
      "os": "android",
      "depth": 20,
      "tag": "yahoo-hotel-serp"
    }
  ]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/serp/wp/organic/live/advanced"

headers = {
    "Authorization": "Bearer smt_live_YOUR_KEY",
    "Content-Type": "application/json"
}

# 实时接口一次支持一个任务,仍须以 JSON 数组提交
payload = [
    {
        "keyword": "hotels in New York",
        "language_code": "en",
        "location_code": 2840,
        "device": "mobile",
        "os": "android",
        "depth": 20,
        "tag": "yahoo-hotel-serp"
    }
]

response = requests.post(url, headers=headers, json=payload, timeout=60)
response.raise_for_status()

result = response.json()
if result["status_code"] == 20000:
    print(result)
else:
    print(f'请求失败:{result["status_code"]} - {result["status_message"]}')

TypeScript

typescript
import axios from "axios";

const response = await axios.post(
  "https://api.seermartech.cn/v3/serp/wp/organic/live/advanced",
  [
    {
      keyword: "hotels in New York",
      language_code: "en",
      location_code: 2840,
      device: "mobile",
      os: "android",
      depth: 20,
      tag: "yahoo-hotel-serp"
    }
  ],
  {
    headers: {
      Authorization: "Bearer smt_live_YOUR_KEY",
      "Content-Type": "application/json"
    }
  }
);

const result = response.data;

if (result.status_code === 20000) {
  console.log(result);
} else {
  console.error(`请求失败:${result.status_code} - ${result.status_message}`);
}

响应结构

接口返回 JSON 对象任务状态、执行耗时、费用信息以及解析后的 SERP 数据。

顶层字段

字段类型说明
versionstring当前 API 版本。
status_codeinteger局状态码。20000 表示请求成功。应针对异常状态设计重试、告警或降级处理逻辑。
status_messagestring局状态说明。
timestring请求执行耗时,单位为秒。
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
tasks_countintegertasks 数组中的任务总数。
tasks_errorinteger返回错误的任务数量。
tasksarray任务结果数组。

tasks[] 任务字段

字段类型说明
idstring平台任务唯一标识,UUID 格式。
status_codeinteger任务状态码。
status_messagestring任务状态说明。
timestring任务执行耗时。
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
result_countintegerresult 数组中的结果对象数量。
patharray请求路径信息。
dataobject回显的请求任务参数。
resultarraySERP 解析结果数组。

result[] 搜索结果信息

字段类型说明
keywordstring已解码的搜索。+ 会被返回为空格。
typestring搜索类型。
se_domainstring实使用的搜索引擎域名。
location_codeinteger实使用的位置代码。
language_codestring实使用的语言代码。
check_urlstring搜索结果页直达链接,可用于人工核验。
datetimestring数据获取时间,UTC 格式:yyyy-mm-dd hh:mm:ss +00:00
spellobject搜索引擎自动纠错信息;未发生纠错时通常为 null
spell.keywordstring自动纠正后的。
spell.typestring自动纠错类型:did_you_meanshowing_results_forno_results_found_forincluding_results_for
refinement_chipsobject搜索细化标签。该字段为 null
item_typesarray当前 SERP 中出现的类型。
se_results_countinteger搜索引擎显示的结果总数。
pages_countinteger实抓取的 SERP 页数。
items_countintegeritems 数组中的数量。
itemsarraySERP素数组。

item_types 可能以下值:

text
featured_snippet、images、local_pack、hotels_pack、organic、paid、
people_also_ask、related_searches、shopping、recipes、top_stories、
video、ai_overview

通用 SERP素字段

除子项外,大部分 SERP素均以下字段:

字段类型说明
typestring素类型。
rank_groupinteger同类型中的排名,不计算类型。
rank_absoluteinteger在整页 SERP 中的绝对位置。
pageinteger素所在的搜索结果页码。
positionstring页面布局位置:leftright
xpathstring素在页面中的 XPath 路径。
rectangleobject / null素在页面中的坐标与尺寸。Yahoo 任务暂不支持 calculate_rectangles,因此通常为 null
rectangle.xinteger素左上角 X 坐标。
rectangle.yinteger素左上角 Y 坐标。
rectangle.widthinteger素宽度,单位为像素。
rectangle.heightinteger素高度,单位为像素。

##素类型说明

organic:自然搜索结果

字段类型说明
domainstring结果域名。
titlestring标题。
urlstring结果 URL。
cache_urlstring缓存页面 URL。
related_search_urlstring站点搜索 URL。
breadcrumbstring面屑文本。
is_imageboolean是否图片。
is_videoboolean是否视频。
is_featured_snippetboolean是否为精选摘要来源。
is_maliciousboolean是否被标记为恶意。
is_web_storyboolean是否为 Web Story。
descriptionstring摘要描述。
pre_snippetstring摘要前的附加信息。
extended_snippetstring摘要后的扩展信息。
imagesarray结果图片。
amp_versionboolean是否存在 AMP 版本。
ratingobject评分信息。
priceobject商品或服务价格信息。
highlightedarray描述中被加粗高亮的词。
linksarray附加站点链接;不存在时为 null
faqobjectFAQ 扩展;不存在时为 null
extended_people_also_searcharray点击结果后返回 SERP 时出现的搜索扩展。
about_this_resultobject“此结果”面板信息。Yahoo 不支持,该字段始终为 null
related_resultarray同域名结果。Yahoo 不支持,该字段始终为 null

organic.images[]

字段类型说明
typestring固定为 images_element
altstring图片 alt 文本。
urlstring页面 URL。
image_urlstring图片 URL;原图不可用时可能为平台缓存地址。

organic.rating

字段类型说明
rating_typestring评分类型:Max5PercentsCustomMax
valuefloat评分值。
votes_countinteger评价数量。
rating_maxinteger当前评分类型的满分值。

organic.pricepaid.priceshopping.items[].pricehotels_pack.items[].price

字段类型说明
currentfloat当前价格。
regularfloat原价或非折扣价格。
max_valuefloat价格区间上限。
currencystring价格币种 ISO 代码。
is_price_rangeboolean是否为价格区间。
displayed_pricestringSERP 原始展示价格文本。
字段类型说明
typestring固定为 link_element
titlestring链接标题。
descriptionstring链接描述。
urlstring链接 URL。

organic.faq

字段类型说明
typestring固定为 faq_box
itemsarrayFAQ 问答项。

organic.faq.items[] 中每项的 typefaq_box_elementtitle(问题)、description(答案)和 links(引用链接数组)。

字段类型说明
domainstring广告结果域名。
titlestring广告标题。
descriptionstring广告描述。
urlstring广告跳转 URL。
breadcrumbstring广告面屑文本。
highlightedarray描述中的高亮词。
extraobject广告扩展信息。
extra.ad_aclkstring广告标识符。
description_rowsarray扩展描述行;无数据时为 null
linksarray广告附加链接。
priceobject广告商品或服务价格信息。

广告附加链接 links[]typelink_element,可 titledescriptionurlad_aclk

images:图片结果模块

字段类型说明
titlestring图片模块标题。
urlstring图片搜索结果页 URL。
itemsarray图片项数组;无数据时为 null
related_image_searchesarray图片搜索建议;无数据时为 null

items[]typeimages_element,:

字段类型说明
altstring图片 alt 文本。
urlstring原始图片页面 URL。
image_urlstring压缩图片 URL 或缓存图片 URL。

related_image_searches[]typerelated_image_searches_elementtitlealturlimage_url

video:视频结果模块

items[] 中每项的 typevideo_element,可:

字段类型说明
sourcestring视频来源。
titlestring视频标题。
timestampstring发布时间,UTC 格式。
urlstring视频 URL。

shopping:购物结果模块

字段类型说明
titlestring购物模块标题。
itemsarray购物项数组。

items[]typeshopping_element,:

字段类型说明
titlestring商品标题。
priceobject商品价格。
sourcestring商品信息来源。
descriptionstring商品描述。
marketplacestring商家或聚合商城名称。
marketplace_urlstring商城商品页 URL。
urlstring商品 URL。
字段类型说明
domainstring来源域名。
titlestring结果标题。
featured_titlestring精选摘要来源页标题。
descriptionstring摘要。
timestampstring发布时间,UTC 格式。
urlstring来源 URL。
imagesarray摘要图片。
tableobject表格结果;不存在时为 null

table.table_header 为列名数组,table.table_content 为表格行数据数组。

top_stories:热门新闻

items[] 中每项的 typetop_stories_element,:

字段类型说明
sourcestring新闻来源。
domainstring来源域名。
titlestring新闻标题。
datestring页面发布日期。
amp_versionboolean是否存在 AMP 版本。
timestampstring发布时间,UTC 格式。
urlstring新闻 URL。
image_urlstring新闻图 URL。

hotels_pack:结果模块

字段类型说明
titlestring店模块标题。
date_fromstring住日期,格式 yyyy-mm-dd
date_tostring离店日期,格式 yyyy-mm-dd
itemsarray店条目数组。

items[]typehotels_pack_element,:

字段类型说明
priceobject指定日期的价格信息。
titlestring店名称。
desriptionstring店描述。注意:字段名按响应原样拼写为 desription
hotel_identifierstring店唯一标识。
domainstring结果域名。
urlstring店链接。
is_paidboolean是否为广告。
ratingobject店评分信息。

local_pack:本地商家结果

字段类型说明
titlestring商家名称。
descriptionstring商家描述,如类别、营业状态、地址等。
domainstring商家网站域名。
phonestring联系电话。
urlstring商家链接。
is_paidboolean是否为广告。
ratingobject商家评分信息。
cidstring本地商家唯一标识。

recipes:食谱结果模块

items[] 中每项的 typerecipes_element,:

字段类型说明
titlestring食谱标题。
urlstring食谱页面 URL。
domainstring来源域名。
sourcestring信息来源。
descriptionstring食谱摘要。
timestring烹饪总耗时。
ratingobject食谱评分信息。

people_also_ask:用户还会问

items[] 中每项的 typepeople_also_ask_element,:

字段类型说明
titlestring问题文本。
xpathstring问题 XPath。
expanded_elementarray展开问题后获得的。

expanded_element[] 可能以下字段:

字段类型说明
typestring可能为 people_also_ask_expanded_elementpeople_also_ask_ai_overview_expanded_element
featured_titlestring来源标题。
urlstring来源 URL。
domainstring来源域名。
titlestring结果标题。
descriptionstring答案摘要。
timestampstring发布时间,UTC 格式。
tableobject表格。
itemsarrayAI 概览项。

AI 概览项的 typeai_overview_element,可 positiontitletextmarkdown

该表示与当前的搜索建议。items 为搜索项数组;当无数据时为 null

ai_overview:AI 概览

字段类型说明
asynchronous_ai_overviewbooleantrue 表示该异步加载;false 表示从缓存加载。
markdownstringAI 概览 Markdown。
itemsarrayAI 概览项。
referencesarray用于生成 AI 概览的参考来源。

> Yahoo 自然搜索结果当前不提供 ai_overview 的,因此字段可能为 null 或空数组。

ai_overview.items[] 中每项的 typeai_overview_element,可:

字段类型说明
positionstring素布局位置:leftright
titlestring标题。
textstring文本或摘要。
markdownstringMarkdown 格式。

ai_overview.references[] 中每项的 typeai_overview_reference,:

字段类型说明
sourcestring参考来源名称或标题。
domainstring参考页面域名。
urlstring参考页面 URL。
titlestring参考页面标题。
textstring用于生成概览的页面文本片段。

响应示例

json
{
  "version": "0.1.20220414",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "0.1721 sec.",
  "cost": 0,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "0.1721 sec.",
      "cost": 0,
      "result_count": 1,
      "data": {
        "api": "serp",
        "function": "live",
        "se": "yahoo",
        "se_type": "organic",
        "language_code": "en",
        "location_name": "United States",
        "keyword": "hotels in New York",
        "device": "mobile",
        "os": "android",
        "tag": "yahoo-hotel-serp"
      },
      "result": [
        {
          "keyword": "hotels in New York",
          "type": "organic",
          "se_domain": "search.yahoo.com",
          "location_code": 2840,
          "language_code": "en",
          "datetime": "2025-01-01 12:00:00 +00:00",
          "item_types": [
            "paid",
            "featured_snippet",
            "organic",
            "hotels_pack",
            "local_pack",
            "images",
            "related_searches"
          ],
          "se_results_count": 0,
          "pages_count": 1,
          "items_count": 3,
          "items": [
            {
              "type": "paid",
              "rank_group": 1,
              "rank_absolute": 1,
              "page": 1,
              "position": "left",
              "domain": "example-hotel.com",
              "title": "纽约优惠",
              "description": "立即预订纽约,享受限时优惠。",
              "url": "https://example-hotel.com/new-york",
              "highlighted": null,
              "extra": {
                "ad_aclk": null
              },
              "links": null,
              "price": null,
              "rectangle": null
            },
            {
              "type": "organic",
              "rank_group": 1,
              "rank_absolute": 2,
              "page": 1,
              "position": "left",
              "domain": "www.example.com",
              "title": "纽约预订与住宿指南",
              "url": "https://www.example.com/new-york-hotels",
              "breadcrumb": "www.example.com > Travel > New York",
              "is_image": false,
              "is_video": false,
              "is_featured_snippet": false,
              "is_malicious": false,
              "is_web_story": false,
              "description": "查看纽约热门、价格和预订建议。",
              "images": null,
              "rating": null,
              "price": null,
              "links": null,
              "faq": null,
              "about_this_result": null,
              "related_result": null,
              "rectangle": null
            },
            {
              "type": "local_pack",
              "rank_group": 1,
              "rank_absolute": 3,
              "page": 1,
              "position": "left",
              "title": "示例",
              "description": " · 营业中 · 纽约市",
              "domain": "example-hotel.com",
              "phone": "+1-212-000-0000",
              "url": "https://example-hotel.com",
              "is_paid": false,
              "rating": {
                "rating_type": "Max5",
                "value": 4.5,
                "votes_count": 1200,
                "rating_max": 5
              },
              "cid": "123456789",
              "rectangle": null
            }
          ]
        }
      ]
    }
  ]
}

错误处理

建议同时检查顶层 status_code 与每个 tasks[].status_code

  • 20000:请求成功。
  • 20000:请求或任务处理失败,应读取对应的 status_message 获取原因。
  • tasks_error 大于 0 时,表示至少一个任务执行异常。
  • 对网络时、限流、参数错误和临时服务异常,建议建立重试、告警与日志记录机制。
  • 任务级错误不一定导致整个 HTTP 请求失败,因此不能依赖 HTTP 状态码判断业务结果。

实用场景

  • 监测 Yahoo 排名:按国家、城市、语言和设备抓取自然结果,持续跟踪品牌站、竞品站或页面的排名变化。
  • 识别竞品广告投放:提取 paid 广告结果、广告标题和跳转链接,评估竞品在目标上的搜索广告覆盖。
  • 挖掘选题机会:分析 people_also_askrelated_searches、精选摘要和自然结果摘要,构建用户问题库与长尾单。
  • 评估本地搜索:通过 local_pack 获取商家名称、电话、评分和地址类描述,本地 SEO 排名与门店竞品监控。
  • 分析商业搜索意图:结合 shoppinghotels_pack、价格、评分及广告,识别高交易意图并优化落地页与投放策略。

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