偏好设置

我们非常重视您的隐私,因此您可以选择禁用某些对网站基本功能并非必要的存储类型。屏蔽某些类别可能会影响您的网站使用体验。更多信息

接受所有 Cookie

用 Google API 查询关键词排名:2026 年指南

Google 并没有实时排名 API。本文讲清楚 Search Console API 到底返回什么、Custom Search 为何会误导人,以及每条路线可用的 Python 代码。

发布于:
4/9/2026
-
更新于:
4/9/2026
开发者屏幕上显示着调用搜索 API 的一行行程序代码
开发者屏幕上显示着调用搜索 API 的一行行程序代码
Sorank 创始人 Thibault Besson-Magdelain

关于作者

Thibault Besson-Magdelain

Sorank 创始人,拥有 5 年以上 SEO 经验,GEO 爱好者。

简而言之:Google 并未提供返回实时关键词排名的 API。Search Console API 返回的是您已验证站点已有排名的查询词的平均位置:免费、第一方数据,但仅限于您自己的站点,而且是一段时间内的平均值。Custom Search JSON API 返回的是自定义搜索引擎的结果,而不是 google.com 的结果,因此它的位置与用户看到的并不一致。如果您需要真实的实时 SERP 位置(包括竞争对手的),就需要第三方 SERP API。本指南给出每条路线可用的代码,以及它们各自失效的地方。

用 Google API 查询关键词排名,这类任务看上去已经有现成答案,直到您真的动手去做。根本不存在 rankings.get() 这样的接口,而人们最先想到的那两个 Google API,回答的其实是与问题微妙不同的另一个问题。Search Console Search Analytics 文档是合适的起点,前提是您明白其中的「位置」到底指什么。

Google 有官方的关键词排名 API 吗?

没有。Google 从未发布过一个可以传入关键词、返回您在 google.com 上实时位置的 API。这是有意为之:自动查询搜索结果页违反 Google 的条款,而且这家公司也没有任何商业动机去提供排名追踪的基础设施。

现实中存在的是三条不完整的路线,每一条都有明确的边界:

路线返回内容能看竞争对手吗?费用
Search Console API平均位置,仅限您自己的站点不能免费
Custom Search JSON API自定义搜索引擎的结果能,但不是真实 SERP每天 100 次查询免费
第三方 SERP API实时、精确的 SERP 位置付费,按查询次数计费

如何从 Search Console API 获取关键词位置?

带上 query 维度调用 searchAnalytics 接口,读取 position 字段即可。这是直接来自 Google 的第一方数据,免费,且没有关键词数量限制:您能拿到站点获得过展现的每一个查询词。

可用的请求,Python 版本:

from google.oauth2 import service_account
from googleapiclient.discovery import build

creds = service_account.Credentials.from_service_account_file(
    "service-account.json",
    scopes=["https://www.googleapis.com/auth/webmasters.readonly"],
)
service = build("searchconsole", "v1", credentials=creds)

response = service.searchanalytics().query(
    siteUrl="https://example.com/",
    body={
        "startDate": "2026-07-01",
        "endDate": "2026-07-31",
        "dimensions": ["query", "page"],
        "rowLimit": 25000,
    },
).execute()

for row in response.get("rows", []):
    query, page = row["keys"]
    print(f"{row['position']:.1f}  {query}  ->  {page}")
电脑显示器上展示着带有效果图表的分析仪表盘
Search Console 返回的是平均位置数据,而不是实时排名快照。

三个容易让人栽跟头的限制

  • 位置是平均值,不是排名。7.4 并不意味着您稳在第 7 位,而是说展现分布在平均为 7.4 的位置上,在不同设备和地区间可能从第 3 位跨到第 15 位。
  • 只能看自己的站点。无法查看竞争对手的位置。Search Console 在设计上就是一个按站点限定范围的 API。
  • 零展现的关键词是看不见的。如果您排在第 60 位而没有人翻到那里,这个查询词根本不会出现在数据里。

第三点正是悄无声息地毁掉报告的那一条。一个您尚未打进前几页的关键词,在 Search Console 里干脆就不存在,这使得单靠这个 API 无法衡量从第 60 位到第 20 位的进展。

能用 Custom Search JSON API 查排名吗?

技术上可以,但没有意义。Custom Search JSON API 要求您先创建一个可编程搜索引擎。即使配置为搜索整个网络,它依然使用自己的排序逻辑和自己的限制,因此它返回的顺序并不是 google.com 返回的顺序。

它的免费层还限定每天 100 次查询,付费使用按每千次查询计费,并设有每日上限。偶尔查几个关键词,它还能用。但当作排名追踪工具,它产出的数字看上去很权威,实际却静静地错了,这比没有数据更糟糕。

直接抓取 Google 呢?

不要这么做。未经允许自动查询 Google 搜索违反了 Google 的服务条款,而且只要量一大,就会招来 IP 封禁和验证码拦截。抛开合规问题不谈,工程上的现实也很棘手:搜索结果是个性化、本地化的,而且越来越多地叠加了 AI 功能,因此即使您的网站毫无变化,抓取到的「位置」也会因数据中心、地点和会话而不同。

如果您需要竞争对手的位置,商业 SERP API 才是既符合服务商协议、运行上又稳定的路线。它是一笔付费支出,而这笔成本就是 Google 不白送的数据应有的价格。需要搭建并监控这套数据管道、又不想自建团队的企业,通常会引入专业服务商;我们对法国十佳数据分析代理机构的对比中,就列出了能搭建这类报告体系的服务商。

一名软件开发者在电脑工作台前编写代码
大规模排名追踪与其说是抓取问题,不如说是集成问题。

您真正应该搭建什么?

对大多数团队而言,务实的架构是混合方案,具体如下:

  • 以 Search Console API 为主干。免费、关键词不限量、第一方数据,也是唯一能告诉您真正获得展现的来源。
  • 用 SERP API 盯住一小批精选关键词。您那二三十个商业上至关重要的词,每天查一次,包括竞争对手的位置。
  • 加上一层 AI 可见度监测。如今的问题已经不只是「我排在第几位」,而是「有人问 AI 助手时,我会被引用吗」。传统排名 API 对此一无所答。

不想自己设计这套架构的团队,通常会交给专业服务商;我们对法国十佳 SEO 代理机构的对比介绍了能为客户管理这套报告体系的服务商。

最后这一点并不是未来才要操心的事。当 AI 回答直接在界面里解决了查询,第十位和第三位的结果就归于一致:都没有点击。在跟踪位置的同时跟踪引用,正是我们的 Search Console MCP 服务器AI 可见度平台的设计目的,使用文档完整讲解了配置流程。

结语

Google 没有提供官方的实时关键词排名 API:自己的平均数据用 Search Console API,精确位置和竞争对手位置用第三方 SERP API,排名工作则完全不要用 Custom Search JSON API。选错底层是这里最常见的错误,它会造出一个自信满满却并不准确的仪表盘。

如果您不想自己搭建和维护这套数据管道,Sorank 可以接入您的 Search Console,并在同一处追踪 AI 引用

常见问题

Google 有关键词排名 API 吗?

没有。Google 从未推出过一个可以传入关键词、返回您在 google.com 上实时排名的 API。Search Console API 只能返回您自己已验证站点的平均排名,而 Custom Search JSON API 查询的是一个自定义搜索引擎,其排序与 google.com 并不一致。

Search Console 里的位置就是排名吗?

不是。Search Console 报告的是所有展现的平均位置,混合了不同设备、地区和日期。报告值 7.4 并不意味着第 7 位;在该时段内,展现可能分布在第 3 位到第 15 位之间。

我可以抓取 Google 来查排名吗?

未经允许自动查询 Google 搜索违反了 Google 的服务条款,且只要量一大,就会触发 IP 封禁和验证码。商业 SERP API 才是既符合服务商协议、运行上又稳定的路线。

他们通过 SORANK 取得成功

我们客户的 案例研究

我们为雄心勃勃的企业打造的博客