通过本文,你将了解:
- 如何在Google Cloud Platform创建项目
- 如何验证域名所有权
- 如何启用Google Search API
1 前言
网络上很多有关教程都是转载来转载去,质量很差,我不想看。
于是我便跟着Google提供的文档一步步操作,最终成功了。
现在我将经验总结如下,希望能帮助到你。
2 Google Search API 介绍
我该使用`Google Search Console API`还是`Google Indexing API`?
Google Search Console API 和 Google Indexing API 都是关于Google Search Console的API,但是它们的功能不同。
如果你是想通过API获取网站访问信息等,那么你应该使用Google Search Console API
。
如果你是想通过API提交网站给Google Search Console,那么你应该使用Google Indexing API
。
但是本文讲解的:
- 如何在Google Cloud Platform创建项目
- 如何验证域名所有权
这两部分,对于Google Search Console API
和Google Indexing API
都是通用的。因为这些API都需要在Google Cloud Platform中创建项目,并且验证域名所有权。
并且在文末我也会附上激活Google Indexing API
的方法。
请放心阅读。
Google Search API
全称为 Google Search Console API
,是Google提供的一套API,可以通过API的方式获取Google Search Console的数据并进行部分操作。
以下为Google Search API全部功能,整理自官方文档:
2.1 Search Analytics
查询网站的流量数据。
方法 | HTTP 请求 | 说明 |
---|---|---|
查询 | POST /sites/siteUrl/searchAnalytics/query | 使用您定义的过滤条件和参数查询搜索流量数据。该方法会返回您定义的行键(维度)分组的零行或多行。您必须定义一个或多个日期的日期范围。 |
JSON POST 示例:
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query{ "startDate": "2015-04-01", "endDate": "2015-05-01", "dimensions": ["country","device"]}
2.2 站点地图
方法 | HTTP 请求 | 说明 |
---|---|---|
delete | DELETE /sites/siteUrl/sitemaps/feedpath | 从此网站中删除站点地图。 |
get | GET /sites/siteUrl/sitemaps/feedpath | 检索关于特定站点地图的信息。 |
list | GET /sites/siteUrl/sitemaps | 列出为此网站提交的站点地图条目,或包含在站点地图索引文件中(如果请求中指定 sitemapIndex)。 |
提交 | PUT /sites/siteUrl/sitemaps/feedpath | 为网站提交站点地图。 |
2.3 协作平台
方法 | HTTP 请求 | 说明 |
---|---|---|
添加 | PUT /sites/siteUrl | 将网站添加到 Search Console 中的用户网站集。 |
delete | DELETE /sites/siteUrl | 从用户的 Search Console 网站集中移除某个网站。 |
get | GET /sites/siteUrl | 检索关于特定网站的信息。 |
list | GET /sites | 列出用户的 Search Console 网站。 |
2.4 网址检查
方法 | HTTP 请求 | 说明 |
---|---|---|
index.inspect | POST /urlInspection/index:inspect | 与 Google 索引中提供的网址相关的信息。 |
JSON POST 示例:
POST https://searchconsole.googleapis.com/v1/urlInspection/index:inspect{"inspectionUrl": "https://www.example.com/mypage","siteUrl": "https://www.example.com/","languageCode": "en-US"}
3 创建项目、配置服务号与验证域名所有权
3.1为什么要创建项目?
在Google Cloud Platform
的逻辑中,你的一切操作都是在项目下进行的。
你的域名、站点、乃至API等都属于用户的资源,这些资源会在项目中进行管理。
简单来说,项目就是一个容器,Google在你发出请求后看容器里是否有请求的主体、请求方是否可以访问容器、请求方是否有权限对容器中的资源进行操作。满足上述条件后,Google才会对你的请求进行处理。
因此,想要调用Google SearchAPI,你必须创建一个项目,并在验证域名所有权后,才能通过API在项目中对资源进行操作。
3.2 创建项目
- 打开Google Cloud Platform,并登录你的Google账号。
- 点击右上角的
Select a project
,然后点击New Project
。创建一个新的项目。
这样,你就创建了一个新的项目。
3.3 配置服务号
- 打开服务账号页面。
- 点击 add 创建服务帐号,并输入服务帐号的名称和说明。您可以使用默认服务帐号 ID,也可以选择其他唯一的帐号 ID。完成后,点击创建。
- 后面的 服务帐号权限(可选) 部分无需设置。点击继续。
- 在 向用户授予访问此服务帐号的权限 屏幕上,向下滚动到创建密钥部分。点击 add 创建密钥。
- 在随即显示的侧面板中,选择密钥的格式。建议使用 JSON。
- 点击创建。你的新公钥/私钥对随后会生成并下载到您的计算机。
这样,你就创建了一个新的服务号,并下载了私钥。在完成本教程后,你可以用这个私钥访问你需要的API。 {{< notice ” warning” >}} 请妥善保管你的私钥,你的私钥只能在创建时下载一次,如果丢失,你将无法再次下载。 {{< /notice >}}
3.4 验证域名所有权
你可以在这里验证域名所有权。
3.5 将服务账号添加为网站所有者
在这里将服务账号添加为网站所有者。
- 选择添加用户。
- 在添加新用户对话框中,输入服务帐号的电子邮件地址。(在
3.3
步骤2中创建的服务帐号邮箱,形如my-service-account@project-name.google.com.iam.gserviceaccount.com
) - 将权限设置为“所有者”。
- 点击添加。
这样,你就将服务账号添加为网站所有者了。
4 启用Google Search Console API
点击这里即可启用Google Search Console API.
此外,点击这里即可启用Google Indexing API.
这样,你就可以通过你的私钥调用Google Search Console API了。
5 结语
通过本文,你应该已经了解了如何启用Google Search Console API,以及如何调用Google Search Console API。
在一开始写这篇文章的时候,我混淆了Google Search Console API和Google Indexing API的逻辑,写到一半才意识到网站资源、token、域名所有权验证之间的逻辑关系,于是我把整篇文章重写了一遍。
可谓教学相长了。