Skip to content

Google 排名(实时)

POST /v3/dataforseo_labs/google/ranked_keywords/live

本接口使用 POST 方法,路径为:

/v3/dataforseo_labs/google/ranked_keywords/live

用于查询指定域名、子域名或网页当前排名的,并返回排名、搜索结果页、月均搜索量、流量估算、搜索意图、反向链接及排名变化等数据。

数据通常每周更新,最新更新时间可通过 /v3/dataforseo_labs/status/ 查询。

接口信息

  • 请求方法POST
  • 请求地址https://api.seermartech.cn/v3/dataforseo_labs/google/ranked_keywords/live
  • 请求格式:JSON,UTF-8 编码
  • 请求体格式:JSON 数组,每次 Live API 请求只能 1 个任务
  • 并发限制:最多同时发送 30 个请求 平台限流以认证说明中的 30/60/120 次/分钟规则为准/分钟
  • 单次任务结果数:默认 100,最多 1000

计费说明

每个请求按任务计费。启用 include_clickstream_data 后,该请求按标准价格的 2 倍计费。

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

请求参数

请求体是数组,数组中的每个对象代表一个任务。

参数类型说明
targetstring查询目标,可以是域名、子域名或网页 URL。域名不得 https://www.;子域名不得 https://;网页 URL须 https://www.。如果网页 URL 未协议或 www.,接口会按整个域名查询。
location_namestring地理位置名称,例如 United Kingdom。与 location_code 二选一。省略时返回所有可用地区的数据。
location_codeinteger地理位置代码,例如 2840。与 location_name 二选一。可通过 /v3/dataforseo_labs/locations_and_languages 获取。
language_namestring语言名称,例如 English。与 language_code 二选一。省略时返回所有可用语言的数据。
language_codestring语言代码,例如 en。与 language_name 二选一。可通过 /v3/dataforseo_labs/locations_and_languages 获取。
ignore_synonymsboolean是否排除高度相似的。设为 true 时返回核心。默认值:false
item_typesarray指定需要返回的搜索结果类型。结果会优按数组中的第一种类型排序。未在该数组中的结果类型不能用于筛选或排序。
include_clickstream_databoolean是否返回点击流指标。设为 true 时,响应会增加点击流搜索量、点击流估算流量及性别、年龄分布等字段。默认值:false
limitinteger返回的最大数量。默认值:100,最大值:1000
offsetinteger结果偏移量。默认值:0。例如设置为 10,将跳过前 10 条结果。
load_rank_absoluteboolean是否返回按 rank_absolute 统计的排名分布。设为 true 时,响应 metrics_absolute。默认值:false
historical_serp_modestring历史排名筛选模式。可选值:livelostall。默认值:live
filtersarray结果筛选条件,最多 8 个。多个条件之间使用 andor
order_byarray结果排序规则。最多设置 3 条规则,使用 ascdesc 指定升序或降序。
tagstring自定义任务标识,最多 255 个字符。该值会原样返回在响应任务的 data 对象中。

historical_serp_mode 取值

说明
live返回目标当前仍出现在搜索结果页中的。
lost返回目标曾经排名,但最近一次检查已不再排名的。
all同时返回当前排名和已丢失排名的。

item_types 可选值

搜索结果类型:

answer_boxappcarouselmulti_carouselfeatured_snippetgoogle_flightsgoogle_reviewsthird_party_reviewsgoogle_postsimagesjobsknowledge_graphlocal_packhotels_packmaporganicpaidpeople_also_askrelated_searchespeople_also_searchshoppingtop_storiestwittervideoeventsmention_carouselrecipestop_sightsscholarly_articlespopular_productspodcastsquestions_and_answersfind_results_onstocks_boxvisual_storiescommercial_unitslocal_servicesgoogle_hotelsmath_solvercurrency_boxproduct_considerationsfound_on_webshort_videosrefine_productsexplore_brandsperspectivesdiscussions_and_forumscompare_sitescoursesai_overview

本接口返回详细排名的类型主要:

  • organic
  • paid
  • featured_snippet
  • local_pack
  • ai_overview_reference

filters 语法

支持以下运算符:

regexnot_regex<<=>>==<>innot_inmatchnot_matchilikenot_ilikelikenot_like

使用 likenot_likeilikenot_ilike 时,可以使用 % 匹零个或多个字符。

示例:

json
[
  {
    "target": "example.com",
    "location_code": 2840,
    "language_code": "en",
    "filters": [
      [
        "keyword_data.keyword_info.search_volume",
        ">",
        100
      ],
      "and",
      [
        "ranked_serp_element.serp_item.type",
        "<>",
        "paid"
      ]
    ],
    "order_by": [
      "keyword_data.keyword_info.search_volume,desc"
    ],
    "limit": 3
  }
]

如果需要查询某个网页的排名,可以直接将网页 URL 作为 target,也可以使用以下字段进行筛选:

ranked_serp_element.serp_item.relative_url

请求示例

cURL

bash
curl --location --request POST \
  "https://api.seermartech.cn/v3/dataforseo_labs/google/ranked_keywords/live" \
  --header "Authorization: Bearer smt_live_YOUR_KEY" \
  --header "Content-Type: application/json" \
  --data-raw '[
    {
      "target": "example.com",
      "location_name": "United States",
      "language_name": "English",
      "filters": [
        [
          "keyword_data.keyword_info.search_volume",
          ">",
          10
        ],
        "and",
        [
          "ranked_serp_element.serp_item.type",
          "<>",
          "paid"
        ]
      ],
      "limit": 3
    }
  ]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/dataforseo_labs/google/ranked_keywords/live"

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

payload = [
    {
        "target": "example.com",
        "location_name": "United States",
        "language_name": "English",
        "filters": [
            [
                "keyword_data.keyword_info.search_volume",
                ">",
                10,
            ],
            "and",
            [
                "ranked_serp_element.serp_item.type",
                "<>",
                "paid",
            ],
        ],
        "limit": 3,
    }
]

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

result = response.json()

if result.get("status_code") == 20000:
    print(result)
else:
    print(
        f"请求失败,错误码:{result.get('status_code')},"
        f"错误信息:{result.get('status_message')}"
    )

TypeScript

typescript
import axios from "axios";

const payload = [
  {
    target: "example.com",
    location_name: "United States",
    language_name: "English",
    filters: [
      ["keyword_data.keyword_info.search_volume", ">", 10],
      "and",
      ["ranked_serp_element.serp_item.type", "<>", "paid"],
    ],
    limit: 3,
  },
];

axios
  .post(
    "https://api.seermartech.cn/v3/dataforseo_labs/google/ranked_keywords/live",
    payload,
    {
      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);
  });

响应结构

接口返回 JSON 对象,主要结构如下:

json
{
  "version": "0.1.20250526",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "1.3363 sec.",
  "cost": 0.011,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "task-uuid",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "1.3200 sec.",
      "cost": 0.011,
      "result_count": 1,
      "path": [
        "v3",
        "dataforseo_labs",
        "google",
        "ranked_keywords",
        "live"
      ],
      "data": {
        "api": "dataforseo_labs",
        "function": "ranked_keywords",
        "se_type": "google",
        "target": "example.com",
        "location_name": "United States",
        "language_name": "English",
        "limit": 3
      },
      "result": [
        {
          "se_type": "google",
          "target": "example.com",
          "location_code": 2840,
          "language_code": "en",
          "total_count": 1250,
          "items_count": 3,
          "metrics": {},
          "items": []
        }
      ]
    }
  ]
}

顶层响应字段

字段类型说明
versionstring当前 API 版本。
status_codeinteger整体响应状态码。20000 表示成功。
status_messagestring整体状态信息。
timestring请求执行时间,单位为秒。
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
tasks_countintegertasks 数组中的任务数量。
tasks_errorinteger执行失败的任务数量。
tasksarray任务结果数组。
tasks[].idstring任务唯一标识,通常为 UUID 格式。
tasks[].status_codeinteger任务状态码,通常在 1000060000 范围。
tasks[].status_messagestring任务状态信息。
tasks[].timestring任务执行时间。
tasks[].costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
tasks[].result_countintegerresult 数组中的数量。
tasks[].patharray请求 API 的路径。
tasks[].dataobject请求中提交的任务参数。
tasks[].resultarray查询结果数组。

完整响应码请参考错误码文档。客户端应针对 HTTP 错误、整体 status_code 和任务级 status_code 分别进行异常处理。

result 字段

字段类型说明
se_typestring搜索引擎类型,通常为 google
targetstring请求中指定的域名、子域名或网页。
location_codeinteger/null地理位置代码。无对应数据时为 null
language_codestring/null语言代码。无对应数据时为 null
total_countinteger数据库中符合请求条件的结果总数。
items_countinteger本次返回的数量。
metricsobjectrank_group 统计的排名、流量及变化指标。
metrics_absoluteobjectrank_absolute 统计的排名分布。在 load_rank_absolute=true 时返回。
itemsarray排名及数据。

metricsmetrics_absolute

两类指标对象均可能以下搜索结果类型:

  • organic:自然搜索
  • paid:付费搜索
  • featured_snippet:精选摘要
  • local_pack:本地结果
  • ai_overview_reference:AI 概览引用

每种类型通常以下字段:

字段类型说明
pos_1integer排名第 1 的结果数量。
pos_2_3integer排名第 2 至第 3 的结果数量。
pos_4_10integer排名第 4 至第 10 的结果数量。
pos_11_20pos_91_100integer对应排名区间的结果数量。
etvfloat估算月流量,通常按点击率与搜索量计算。
countinteger含目标的搜索结果总数。
estimated_paid_traffic_costfloat将估算自然流量转化为付费流量所需的月度预估成本。
is_newinteger新发现的排名数量。
is_upinteger排名上升的数量。
is_downinteger排名下降的数量。
is_lostinteger最近一次检查中已丢失的排名数量。
clickstream_etvinteger基于点击流搜索量计算的估算流量。需要启用 include_clickstream_data
clickstream_gender_distributionobject点击流用户性别分布。
clickstream_age_distributionobject点击流用户年龄分布。

排名区间字段:

pos_1pos_2_3pos_4_10pos_11_20pos_21_30pos_31_40pos_41_50pos_51_60pos_61_70pos_71_80pos_81_90pos_91_100

点击流分布字段

clickstream_gender_distributiongender_distribution含:

  • female:点击流数据集中女性用户数量
  • male:点击流数据集中男性用户数量

clickstream_age_distributionage_distribution含:

  • 18-24
  • 25-34
  • 35-44
  • 45-54
  • 55-64

这些字段分别表示对应年龄段的用户数量。只有启用 include_clickstream_data=true 时,点击流字段才会返回。

items 字段

每个 items素代表一个排名。

字段类型说明
se_typestring搜索引擎类型。
keyword_dataobject及指标。
keyword_propertiesobject附加属性。
serp_infoobject该对应的搜索结果页信息。
avg_backlinks_infoobject该自然排名前 10 个页面的平均反向链接指标。
search_intent_infoobject搜索意图信息。
ranked_serp_elementobject目标在该搜索结果页中的排名。

keyword_data

字段类型说明
se_typestring搜索引擎类型。
keywordstring返回的。
location_codeinteger地理位置代码。
language_codestring语言代码。
keyword_infoobject搜索量、竞争度和点击价格等数据。
keyword_info_normalized_with_bingobject/null使用 Bing 搜索量归一化后的数据。
keyword_info_normalized_with_clickstreamobject/null使用点击流数据归一化后的数据。
clickstream_keyword_infoobject/null点击流数据在启用点击流数据时返回。

keyword_info

字段类型说明
se_typestring搜索引擎类型。
last_updated_timestring数据更新时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00
competitionfloat/null广告竞争度,范围为 01
competition_levelstring/null付费搜索竞争等级:LOWMEDIUMHIGH
cpcfloat/null平均每次点击费用。
search_volumeinteger平均月搜索量。
low_top_of_page_bidfloat/null广告出现在首页顶部所需的较低估算出价。
high_top_of_page_bidfloat/null广告出现在首页顶部所需的较高估算出价。
categoriesarray/null产品和服务分类。
monthly_searchesarray/null过去 12 个月的月度搜索量。
search_volume_trendobject搜索量变化趋势。

search_volume_trend 字段:

字段类型说明
monthlyinteger较上月的搜索量变化百分比。
quarterlyinteger较上季度的搜索量变化百分比。
yearlyinteger较上年度的搜索量变化百分比。

monthly_searches 数组中的:

字段类型说明
yearinteger年份。
monthinteger月份。
search_volumeinteger当月搜索量。

归一化与点击流字段

启用 include_clickstream_data=true 后,可能返回以下对象:

  • keyword_info_normalized_with_bing
  • keyword_info_normalized_with_clickstream
  • clickstream_keyword_info

这些对象通常:

字段类型说明
last_updated_timestring数据集更新时间。
search_volumeinteger当前或月均搜索量。
is_normalizedboolean是否已使用对应数据源进行归一化。
monthly_searchesarray按年月划分的搜索量数据。
gender_distributionobject性别分布。
age_distributionobject年龄分布。

keyword_properties

字段类型说明
se_typestring搜索引擎类型。
core_keywordstring/null同义词分组中的核心。
synonym_clustering_algorithmstring/null同义词聚类算法:keyword_metricstext_processing
keyword_difficultyinteger自然搜索前 10 名的难度,范围为 0100
detected_languagestring系统识别出的语言。
is_another_languageboolean识别出的语言是否与请求指定语言不同。

serp_info

字段类型说明
se_typestring搜索引擎类型。
check_urlstring对应搜索结果页的直接 URL,可用于人工核验结果。
serp_item_typesarray搜索结果页中出现的类型。
se_results_countinteger/string搜索结果数量。
keyword_difficultyinteger自然排名难度。
is_lostboolean目标是否已不再出现在搜索结果页。
last_updated_timestring当前搜索结果页数据更新时间。
previous_updated_timestring上一次搜索结果页数据更新时间。

该对象描述该自然搜索前 10 个页面的平均反向链接。

字段类型说明
se_typestring搜索引擎类型。
backlinksfloat平均反向链接数量。
dofollowfloat平均 Dofollow 链接数量。
referring_pagesfloat平均引用页面数量。
referring_domainsfloat平均引用域名数量。
referring_main_domainsfloat平均引用主域名数量。
rankfloat平均页面排名。
main_domain_rankfloat平均主域名排名。
last_updated_timestring反向链接数据更新时间。

search_intent_info

字段类型说明
se_typestring搜索引擎类型,通常为 google
main_intentstring主要搜索意图:informationalnavigationalcommercialtransactional
foreign_intentarray/null补搜索意图。
last_updated_timestring搜索意图数据更新时间。

ranked_serp_element

该对象描述目标在对应搜索结果页中找到的排名。

字段类型说明
se_typestring搜索引擎类型。
serp_itemobject排名的详细信息。
check_urlstring搜索结果页直接 URL。
serp_item_typesarray搜索结果页类型。
se_results_countinteger/string搜索结果数量。
keyword_difficultyinteger自然排名难度。
is_lostboolean该排名结果是否已经丢失。
last_updated_timestring当前排名数据更新时间。
previous_updated_timestring上一次排名数据更新时间。

serp_item 通用字段

不同结果类型的字段略有差异,但通常:

字段类型说明
se_typestring搜索引擎类型。
typestring结果类型,如 organicpaidlocal_packfeatured_snippetai_overview_reference
rank_groupinteger同类型结果中的相对排名。
rank_absoluteinteger所有搜索结果中的绝对排名。
positionstring页面位置:leftright
xpathstring结果的 XPath。
domainstring搜索结果域名或子域名。
titlestring结果标题。
urlstring结果 URL。
breadcrumbstring面屑路径。
website_namestring网站名称。
descriptionstring结果描述。
main_domainstring主域名。
relative_urlstring不协议和域名的相对 URL。
etvfloat该对应的估算月流量。
estimated_paid_traffic_costfloat/null通过付费广告获得相应流量的月度预估成本。
clickstream_etvinteger/null基于点击流数据的估算流量。
rank_changesobject与上次检查相比的排名变化。
backlinks_infoobject/null目标页面的反向链接数据。
rank_infoobject页面排名和主域名排名。

自然结果 organic

除通用字段外,还可能:

字段类型说明
is_imageboolean是否图片。
is_videoboolean是否视频。
is_featured_snippetboolean是否为精选摘要。
is_maliciousboolean是否被标记为恶意结果。
pre_snippetstring/null描述前附加的信息。
extended_snippetstring/null描述后附加的信息。
amp_versionboolean是否存在 AMP 版本。
ratingobject/null评分信息。
highlightedarray描述中加粗显示的词语。
linksarray/null站点链接。
about_this_resultobject/null“此结果”面板信息。

付费结果 paid

除通用字段外,还可能:

字段类型说明
domainstring广告结果中的域名。
breadcrumbstring广告结果的面屑。
highlightedarray描述中加粗显示的词语。
extraobject广告附加信息。
extra.ad_aclkstring广告标识符。
extra.description_rowsarray/null扩展广告描述。
linksarray/null广告站点链接。

本地结果 local_pack

除通用字段外,还可能:

字段类型说明
phonestring电话号码。
is_paidboolean是否为广告结果。
ratingobject/null评分及评价数量。

除通用字段外,还可能:

字段类型说明
featured_titlestring精选摘要来源页面标题。
tableobject/null精选摘要中的表格。
table.table_headerarray表格列名。
table.table_contentarray表格,每个代表一行。

AI 概览引用 ai_overview_reference

字段类型说明
typestring固定为 ai_overview_reference
rank_groupinteger同类型中的相对排名。
rank_absoluteinteger所有搜索结果中的绝对排名。
positionstring页面位置。
sourcestring引用来源名称或标题。
domainstring引用来源域名。
titlestring引用页面标题。
urlstring引用页面 URL。
textstring用于生成 AI 概览结果的引用文本。
main_domainstring主域名。
relative_urlstring相对 URL。
etvfloat估算月流量。
estimated_paid_traffic_costfloat/null付费流量成本估算。
rank_changesobject排名变化。
backlinks_infoobject/null反向链接数据。
rank_infoobject页面及主域名排名。

排名变化 rank_changes

字段类型说明
previous_rank_absoluteinteger/null上一次检查中的绝对排名。新结果为 null
is_newboolean是否为新发现的结果。
is_upboolean排名是否较上次上升。
is_downboolean排名是否较上次下降。

反向链接与页面排名

字段类型说明
referring_domainsinteger引用域名数量,子域名按独立域名计算。
referring_main_domainsinteger引用主域名数量。
referring_pagesinteger指向目标页面的页面数量。
dofollowintegerDofollow 链接数量。
backlinksinteger反向链接总数 Dofollow 和 Nofollow。
time_updatestring反向链接数据更新时间。

rank_info

字段类型说明
page_rankinteger页面排名指标。
main_domain_rankinteger主域名排名指标。

这些排名指标基于链接数据库中的节点排名方法计算,用于衡量页面和域名在链接中的相对重要性。

评分字段 rating

部分自然结果或本地结果可能评分对象:

字段类型说明
rating_typestring评分类型:Max5PercentsCustomMax
valueinteger评分值。
votes_countinteger评价数量。
rating_maxinteger评分上限。

常见状态码

状态码说明
20000请求成功。
状态码请求或任务执行失败,请结合 status_message 定位原因。

建议同时检查以下字段:

  • HTTP 状态码
  • 顶层 status_code
  • tasks[].status_code
  • tasks_error
  • status_message

实用场景

  • 盘点网站排名:批量获取域名、子域名或网页的排名,评估自然搜索覆盖范围并制定扩展计划。
  • 发现流量增长机会:筛选搜索量较高但排名处于第 11 至第 20 位的,优优化接近首页的页面以提升自然流量。
  • 监控流失:使用 historical_serp_mode=lost 识别已丢失排名的,及时排查页面变更、衰退或竞争对手增长。
  • 分析搜索结果类型占位:结合 organicfeatured_snippetlocal_packai_overview_reference,评估网站在不同搜索结果中的可见度。
  • 制定竞争策略:结合难度、搜索意图、前 10 名页面的平均反向链接和估算流量,判断目标的竞争强度与优级。

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