Skip to content

通过任务 ID 获取 Seznam 自然搜索结果(高级版)

本接口使用 GET 方法,通过任务 ID 获取 Seznam 自然搜索结果高级版数据。

请求方法与路径:

text
GET https://api.seermartech.cn/v3/serp/seznam/organic/task_get/advanced/$id

$id 为任务唯一标识。

计费说明

  • 在提交任务时计费。
  • 任务完成后,可在 30 天查询结果。
  • 查询任务结果不会产生额外费用。
  • 实扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
  • 任务 ID 在任务提交后的 30 天有效。

请求参数

该接口不接收 JSON 请求体,任务 ID 通过 URL 路径传。

参数类型说明
idstring任务唯一标识,UUID 格式。可在任务提交后的 30 天用于查询任务结果。

认证方式

请求头中使用 Bearer Token:

http
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json

请求示例

cURL

bash
curl --location \
  --request GET \
  "https://api.seermartech.cn/v3/serp/seznam/organic/task_get/advanced/02261816-2027-0066-0000-c27d02864073" \
  --header "Authorization: Bearer smt_live_YOUR_KEY" \
  --header "Content-Type: application/json"

Python

python
import requests

task_id = "02261816-2027-0066-0000-c27d02864073"

response = requests.get(
    f"https://api.seermartech.cn/v3/serp/seznam/organic/task_get/advanced/{task_id}",
    headers={
        "Authorization": "Bearer smt_live_YOUR_KEY",
        "Content-Type": "application/json",
    },
)

response.raise_for_status()
result = response.json()
print(result)

TypeScript

typescript
import axios from "axios";

const taskId = "02261816-2027-0066-0000-c27d02864073";

axios
  .get(
    `https://api.seermartech.cn/v3/serp/seznam/organic/task_get/advanced/${taskId}`,
    {
      headers: {
        Authorization: "Bearer smt_live_YOUR_KEY",
        "Content-Type": "application/json",
      },
    }
  )
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.error(error.response?.data || error.message);
  });

沙盒测试

可以使用以下沙盒任务 ID 查看该接口支持的 SERP 特征及扩展字段:

text
https://sandbox.seermartech.cn/v3/serp/seznam/organic/task_get/advanced/00000000-0000-0000-0000-000000000000

沙盒响应中的字段会使用模拟数据,调用沙盒接口不会产生费用。

响应结构

接口返回 JSON 对象,顶层 tasks 数组。

顶层响应字段

字段类型说明
versionstring当前 API 版本。
status_codeinteger通用响应状态码。成功通常为 20000
status_messagestring通用状态说明。
timestring请求执行耗时,例如 0.0712 sec.
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
tasks_countintegertasks 数组中的任务数量。
tasks_errorintegertasks 数组中返回错误的任务数量。
tasksarray任务结果数组。

tasks 数组

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

data 对象可能以下任务参数:

字段类型说明
apistringAPI 类型,例如 serp
functionstringAPI 操作,例如 task_get
sestring搜索引擎类型,例如 seznam
se_typestring搜索结果类型,例如 organic
keywordstring查询。
language_codestring语言代码。
location_codeinteger地区代码。
devicestring设备类型,例如 desktop
osstring操作系统,例如 windows
tagstring用户自定义任务标签。
postback_urlstring异步回调地址。
postback_datastring回调数据格式。
calculate_rectanglesboolean是否计算 SERP素的矩形坐标。对于 Seznam 任务,此参数暂不可用, rectangle 始终为 null

result 结果字段

字段类型说明
keywordstring提交任务时的。返回值会对 URL 编码进行解码,+ 会被解码为空格。
typestring搜索结果类型。
se_domainstring搜索引擎域名。
location_codeinteger地区代码。
language_codestring语言代码。
check_urlstring搜索引擎结果页的直接 URL,可用于核验结果准确性。
datetimestring获取结果的 UTC 时间,格式为 yyyy-mm-dd hh-mm-ss +00:00
spellobject搜索引擎自动纠错信息。没有纠错时通常为 null
refinement_chipsobject搜索筛选标签。该搜索引擎通常返回 null
item_typesarraySERP 中出现的结果类型。
se_results_countintegerSERP 中的结果总数。
pages_countinteger获取到的 SERP 页数。
items_countintegeritems 数组中的数量。
itemsarraySERP 中的各类结果。

spell 自动纠错

字段类型说明
keywordstring自动纠错后的,结果将针对该返回。
typestring纠错类型。可选值:did_you_meanshowing_results_forno_results_found_forincluding_results_for

item_types 可选值

text
images
local_pack
organic
related_searches
top_stories
featured_snippet
video
shopping

items 通用字段

不同 SERP 特征会使用不同字段,但通常以下定位信息:

字段类型说明
typestringSERP素类型。
rank_groupinteger同类型的分组排名。不同类型之间不会影响该排名。
rank_absoluteinteger在整个 SERP 中的绝对排名。
pageinteger素所在的 SERP 页码。
positionstring素在页面中的对齐方式,可为 leftright
xpathstring素在 SERP 页面中的 XPath。
rectangleobject素在 SERP 页面中的坐标和尺寸。Seznam 当前始终返回 null

rectangle 字段

当接口返回矩形信息时,字段结构如下:

字段类型说明
xinteger/float素左上角的横坐标。
yinteger/float素左上角的纵坐标。
widthinteger/float素宽度,单位为像素。
heightinteger/float素高度,单位为像素。

organic 自然结果

typeorganic 时,可能以下字段:

字段类型说明
domainstring搜索结果域名。
titlestring搜索结果标题。
urlstring搜索结果 URL。
cache_urlstring页面缓存 URL,没有缓存时为 null
breadcrumbstring搜索结果面屑。
is_imageboolean是否图片。
is_videoboolean是否视频。
is_featured_snippetboolean是否为精选摘要。
is_maliciousboolean是否被标记为恶意结果。
is_web_storyboolean是否为 Web Story。
descriptionstring搜索结果描述。
pre_snippetstring描述前附加的信息。
extended_snippetstring描述后附加的信息。
amp_versionboolean是否存在 AMP 版本。
ratingobject结果评分信息,没有评分时为 null
highlightedarray描述中以粗体突出显示的词语。
linksarray站点链接,没有站点链接时为 null
faqobjectFAQ 扩展,没有 FAQ 时为 null
extended_people_also_searcharray搜索扩展。
timestampstring结果发布时间,UTC 格式。

rating 评分字段

字段类型说明
rating_typestring评分类型,可为 Max5PercentsCustomMax
valueinteger评分值。
votes_countinteger评价数量。
rating_maxinteger当前评分类型的最大值。
字段类型说明
typestring素类型,通常为 link_element
titlestring链接标题。
descriptionstring链接描述。
urlstring站点链接 URL。

faq 常见问题字段

字段类型说明
typestring素类型,通常为 faq_box
itemsarrayFAQ 问答项。

FAQ 项字段:

字段类型说明
typestring素类型,通常为 faq_box_element
titlestring问题标题。
descriptionstring展开区域中的答案。
linksarrayFAQ 项中的链接。

FAQ 链接字段:

字段类型说明
typestring素类型,通常为 link_element
titlestring链接锚文本。
urlstring链接 URL。

搜索的 typerelated_searches,除通用排名字段外,还:

字段类型说明
itemsarray/null搜索项。没有搜索时为 null

local_pack 本地结果

typelocal_pack 时,可能:

字段类型说明
titlestring本地商户或地点名称。
descriptionstring商户描述。
domainstring商户域名。
phonestring电话号码。
urlstring商户 URL。
is_paidboolean是否为付费广告结果。
ratingobject商户评分信息。
cidstring商户唯一标识。

video 视频结果

typevideo 时,:

字段类型说明
itemsarray/null视频条目列表。
typestring视频条目类型,通常为 video_element
sourcestring视频来源。
titlestring视频标题。
timestampstring视频发布时间,UTC 格式。
urlstring视频 URL。

images 图片结果

typeimages 时,:

字段类型说明
titlestring图片结果模块标题。
urlstring图片模块 URL。
itemsarray/null图片条目列表。

图片条目字段:

字段类型说明
typestring图片条目类型,通常为 images_element
altstring图片 alt 文本。
urlstring图片原始页面或图片资源 URL。
rectangleobject/null图片在 SERP 中的坐标信息。

shopping 商品结果

typeshopping 时,:

字段类型说明
titlestring商品标题。
itemsarray/null商品条目列表。

商品条目字段:

字段类型说明
typestring商品条目类型,通常为 shopping_element
titlestring商品标题。
priceobject商品价格信息。
displayed_pricestring页面展示的原始价格文本。
sourcestring商品信息来源。
descriptionstring商品描述。
marketplacestring商品所在电商平台或商户平台。
marketplace_urlstring商品在电商平台中的页面 URL。
urlstring商品 URL。
rectangleobject/null商品的坐标信息。

price 价格字段

字段类型说明
currentfloat当前价格。
regularfloat常规价格。
max_valuefloat价格范围中的最高价格。
currencystring价格币种,使用 ISO 货币代码。
is_price_rangeboolean是否为价格区间。

top_stories 资讯结果

typetop_stories 时,:

字段类型说明
itemsarray/null资讯条目列表。

资讯条目字段:

字段类型说明
typestring条目类型,通常为 top_stories_element
sourcestring资讯来源。
domainstring来源域名。
titlestring资讯标题。
datestring页面来源的发布日期。
amp_versionboolean是否存在 AMP 版本。
timestampstring结果发布时间,UTC 格式。
urlstring资讯 URL。
image_urlstring资讯图片 URL。
rectangleobject/null资讯模块坐标信息。

typefeatured_snippet 时,:

字段类型说明
domainstring精选摘要来源域名。
titlestring搜索结果标题。
featured_titlestring精选摘要来源页面标题。
descriptionstring精选摘要。
timestampstring结果发布时间,UTC 格式。
urlstring来源页面 URL。
imagesobject/null精选摘要中的图片信息。
tableobject/null精选摘要中的表格信息。

table 表格字段

字段类型说明
table_headerarray表格列名。
table_contentarray表格,每个数组代表一行。

时间字段格式

datetimetimestamp 等时间字段均使用 UTC 格式:

text
yyyy-mm-dd hh-mm-ss +00:00

示例:

text
2019-11-15 12:57:46 +00:00

响应示例

json
{
  "version": "0.1.20220428",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "0.0712 sec.",
  "cost": 0,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "02261816-2027-0066-0000-c27d02864073",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "0.0500 sec.",
      "cost": 0,
      "result_count": 1,
      "path": [
        "v3",
        "serp",
        "seznam",
        "organic",
        "task_get",
        "advanced"
      ],
      "data": {
        "api": "serp",
        "function": "task_get",
        "se": "seznam",
        "se_type": "organic",
        "language_code": "cs",
        "location_code": 2203,
        "keyword": "restaurants prague",
        "device": "desktop",
        "os": "windows"
      },
      "result": [
        {
          "keyword": "restaurants prague",
          "type": "organic",
          "se_domain": "search.seznam.cz",
          "location_code": 2203,
          "language_code": "cs",
          "check_url": "https://search.seznam.cz/",
          "datetime": "2019-11-15 12:57:46 +00:00",
          "item_types": [
            "organic",
            "local_pack",
            "featured_snippet",
            "top_stories",
            "images",
            "video",
            "related_searches"
          ],
          "se_results_count": 0,
          "pages_count": 1,
          "items_count": 3,
          "items": [
            {
              "type": "organic",
              "rank_group": 1,
              "rank_absolute": 2,
              "page": 1,
              "position": "left",
              "xpath": "/html/body/div/div/div",
              "domain": "www.example.com",
              "title": "示例搜索结果",
              "url": "https://www.example.com/",
              "cache_url": null,
              "breadcrumb": "example.com",
              "is_image": false,
              "is_video": false,
              "is_featured_snippet": false,
              "is_malicious": false,
              "is_web_story": false,
              "description": "示例搜索结果描述。",
              "pre_snippet": null,
              "extended_snippet": null,
              "amp_version": false,
              "rating": null,
              "highlighted": [],
              "links": null,
              "faq": null,
              "extended_people_also_search": null,
              "timestamp": null,
              "rectangle": null
            },
            {
              "type": "local_pack",
              "rank_group": 1,
              "rank_absolute": 6,
              "page": 1,
              "position": "left",
              "xpath": "/html/body/div/div/div",
              "title": "示例本地商户",
              "description": "示例商户描述",
              "domain": "www.example.com",
              "phone": null,
              "url": "https://www.example.com/business",
              "is_paid": false,
              "rating": null,
              "cid": null,
              "rectangle": null
            },
            {
              "type": "related_searches",
              "rank_group": 1,
              "rank_absolute": 15,
              "page": 1,
              "position": "left",
              "xpath": "/html/body/div/div/div",
              "items": null,
              "rectangle": null
            }
          ]
        }
      ]
    }
  ]
}

状态码与异常处理

请根据以下字段判断请求和任务是否成功:

  • 顶层 status_code:判断 API 请求是否成功。
  • 任务级 tasks[].status_code:判断任务是否成功。
  • status_message:查看对应的状态说明。
  • 当状态码表示错误,或 result 为空时,应记录错误信息并执行重试、告警或人工排查。
  • 建议在业务系统中完整处理网络异常、认证失败、任务过期、任务不存在和结果为空等。

实用场景

  • 监控自然排名:定期读取指定的 organic 结果,跟踪目标域名在 Seznam 中的排名变化。
  • 分析 SERP 特征占位:利用 item_typesfeatured_snippetlocal_packvideoimages 等字段,评估页面获得特殊搜索展现的机会。
  • 提取本地搜索竞争信息:读取 local_pack 中的商户名称、域名、电话、评分和 cid,用于本地 SEO 竞品分析。
  • 发现优化方向:结合 related_searchesfaqextended_people_also_search,扩展和主题。
  • 核验搜索结果页面结构:使用 check_urlxpath、排名字段和 SERP素类型,对采集结果进行准确性校验和页面结构分析。

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