Google 索引脚本
使用此脚本可在不到 48 小时内将您的整个网站索引到 Google。没有技巧,没有黑客手段,只是一个简单的脚本和 Google API。
您可以在这篇博文中阅读更多关于其背后的动机和工作原理:https://seogets.com/blog/google-indexing-script
[!重要]
- 索引 != 排名。这不会帮助您的页面在 Google 上排名,它只会让 Google 知道您的页面存在。
- 此脚本使用 Google 索引 API。我们不建议在垃圾/低质量内容上使用此脚本。
要求
- 安装 Node.js
- 在 Google 搜索控制台 上拥有经过验证的要索引的网站账户
- Google Cloud 账户
准备
- 按照 Google 的这个指南操作。完成后,您应该在 Google Cloud 上有一个启用了索引 API 的项目,以及一个对您的网站具有"所有者"权限的服务账户。
- 确保在您的 Google 项目 ➤ API 服务 ➤ 已启用的 API 和服务 中同时启用
Google 搜索控制台 API
和Web 搜索索引 API
。 - 下载 JSON 文件,其中包含您的服务账户的凭据,并将其保存在与脚本相同的文件夹中。文件应命名为
service_account.json
安装
使用 CLI
在您的机器上全局安装 CLI。
npm i -g google-indexing-script
使用仓库
将仓库克隆到您的机器上。
git clone https://github.com/goenning/google-indexing-script.git
cd google-indexing-script
安装并构建项目。
npm install
npm run build
npm i -g .
[!注意] 确保您使用的是最新版本的 Node.js,最好是 v20 或更高版本。使用
node -v
检查您当前的版本。
使用方法
使用 service_account.json
(推荐)
在您的主文件夹中创建一个 .gis
目录,并将 service_account.json
文件移动到那里。
mkdir ~/.gis
mv service_account.json ~/.gis
使用您要索引的域名或 URL 运行脚本。
gis <域名或URL>
# 示例
gis seogets.com
以下是运行脚本的其他方式:
# 自定义 service_account.json 路径
gis seogets.com --path /path/to/service_account.json
# 长版本命令
google-indexing-script seogets.com
# 克隆的仓库
npm run index seogets.com
使用环境变量
打开 service_account.json
并复制 client_email
和 private_key
值。
使用您要索引的域名或 URL 运行脚本。
GIS_CLIENT_EMAIL=your-client-email GIS_PRIVATE_KEY=your-private-key gis seogets.com
使用参数 (不推荐)
打开 service_account.json
并复制 client_email
和 private_key
值。
获得这些值后,使用您要索引的域名或 URL、客户端电子邮件和私钥运行脚本。
gis seogets.com --client-email your-client-email --private-key your-private-key
作为 npm 模块
您还可以在自己的项目中将脚本作为 npm 模块 使用。
npm i google-indexing-script
import { index } from "google-indexing-script";
import serviceAccount from "./service_account.json";
index("seogets.com", {
client_email: serviceAccount.client_email,
private_key: serviceAccount.private_key,
})
.then(console.log)
.catch(console.error);
阅读 API 文档 了解更多详情。
以下是您应该看到的示例:
[!重要]
- 您的网站必须在 Google 搜索控制台中提交了 1 个或多个站点地图。否则,脚本将无法找到要索引的页面。
- 您可以根据需要多次运行脚本。它只会索引尚未索引的页面。
- 页面数量较多的网站可能需要一些时间来索引,请耐心等待。
配额
根据您的账户,API 配置了几个配额(参见文档)。默认情况下,一旦超过速率限制,脚本就会退出。您可以为适用于每分钟时间框架的读取请求配置重试机制。
使用环境变量
export GIS_QUOTA_RPM_RETRY=true
作为 npm 模块
import { index } from 'google-indexing-script'
import serviceAccount from './service_account.json'
index('seogets.com', {
client_email: serviceAccount.client_email,
private_key: serviceAccount.private_key
quota: {
rpmRetry: true
}
})
.then(console.log)
.catch(console.error)
🔀 替代方案
如果您更喜欢免操作且技术要求较低的解决方案,可以使用 TagParrot 等 SaaS 平台。
📄 许可证
MIT 许可证
💖 赞助商
本项目由 SEO Gets 赞助