# gscdump 中文文档

规范地址：https://npmcn.com/package/gscdump/

版本：7\.9\.1
npm 元数据更新时间：2026-11-03T15:51:38.195Z
中文译文更新时间：2026-11-03T19:41:53.709Z
软件包许可：MIT

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/gscdump
原文对照：https://npmcn.com/package/gscdump/?lang=original
项目主页：https://github.com/harlan-zw/gscdump/tree/main/packages/gscdump#readme
源码仓库：https://github.com/harlan-zw/gscdump

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：277 kB，99 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.13\.0
- 运行依赖：2 个
- 首次发布：2026-01-18T14:25:17.011Z
- 最新版本发布：2026-11-03T15:51:37.752Z
- 已发布版本数：269（近 12 个月 269 个）

## 中文简介

直接谷歌搜索控制台和Bing网站管理员客户端键入查询和索引证据

## 安装

```sh
npm install gscdump
```

也可以使用：`pnpm add gscdump`、`yarn add gscdump`、`bun add gscdump`

## README

# gscdump

[![npm version](https://img.shields.io/npm/v/gscdump?color=yellow)](https://npmjs.com/package/gscdump) [![npm downloads](https://img.shields.io/npm/dm/gscdump?color=yellow)](https://npm.chart.dev/gscdump) [![license](https://img.shields.io/github/license/harlan-zw/gscdump?color=yellow)](https://github.com/harlan-zw/gscdump/blob/main/LICENSE)

直接谷歌搜索控制台和Bing网站管理员客户端键入查询和索引证据。

## 安装

```bash
npm install gscdump
```

`gscdump` 需要Node 22或更新版本。它能和b谷歌说话 `fetch`;它不需要谷歌API客户端包。

## 查询及搜索分析

创建一个带有访问令牌、类似oauth的客户端或刷新令牌凭证的客户端：

```ts
import { googleSearchConsole } from 'gscdump'

const client = googleSearchConsole({ accessToken: 'ya29.xxx' })
const sites = await client.sites()
```

使用 `fetchOptions` 对于自定义标头、请求钩子或重试设置：

```ts
const client = googleSearchConsole('ya29.xxx', {
  fetchOptions: {
    headers: new Headers({ 'x-project': 'analytics' }),
    retry: 0,
    timeout: 10_000,
    onRequest({ options }) {
      options.headers.set('x-request-id', crypto.randomUUID())
    },
  },
})
```

请求钩子在身份验证后运行。客户端等待每个钩子，包括钩子数组。 如果省略重试设置，则请求使用三次重试并尊重谷歌的重试设置 `Retry-After` 头。

使用 `gscdump/query` 构建一个请求。 `client.query()` 对谷歌的25,000行页面进行分页，并生成每个非空批。

```ts
import { googleSearchConsole } from 'gscdump'
import { between, date, daysAgo, gsc, page, query } from 'gscdump/query'

const client = googleSearchConsole('ya29.xxx')
const siteUrl = 'sc-domain:example.com'

const request = gsc
  .select(page, query)
  .where(between(date, daysAgo(30), daysAgo(3)))

for await (const rows of client.query(siteUrl, request)) {
  for (const row of rows)
    console.log(row.page, row.query, row.clicks)
}
```

如果你已经有一个搜索分析请求体，调用直接操作：

```ts
const response = await client.searchAnalytics.query(siteUrl, {
  startDate: '2026-06-01',
  endDate: '2026-06-30',
  dimensions: ['page'],
  rowLimit: 1000,
})
```

## b谷歌的其他资源

对站点地图、检查和合格的索引API通知使用相同的客户端：

```ts
const sitemapList = await client.sitemaps.list(siteUrl)
const inspection = await client.inspect(siteUrl, 'https://example.com/docs')

await client.indexing.publish(
  'https://example.com/jobs/frontend-engineer',
  'URL_UPDATED',
)
```

索引通知仅适用于符合条件的工作或直播页面。 看到 [URL检查和索引](https://npmcn.com/docs/gscdump-cli/guides/6.url-indexing.md)。

包根还导出批处理和投影帮助程序，例如 `fetchSitesWithSitemaps`， `batchInspectUrlsFlatSettled`， `inspectUrlFlat`, `batchRequestIndexing`。

## 发送IndexNow更改通知

在提交的主机上发布UTF-8密钥文件。 密钥文件包含您的密钥，没有其他内容。

```ts
import { indexNow } from 'gscdump/indexnow'

const client = indexNow()
const input = {
  host: 'example.com',
  key: 'your-key-12345',
  keyLocation: 'https://example.com/your-key-12345.txt',
}
const verification = await client.verify(input)
if (verification.ok && verification.value._tag === 'verified') {
  const result = await client.submit({
    ...input,
    urls: ['https://example.com/changed-page'],
  })
  console.log(result)
}
```

客户端在发送之前拒绝准确的主机或密钥目录之外的url。 验证允许HTTPS，禁用重定向，并且在10秒内最多读取1024字节。 注入 `fetch`， `clock`,或 `timeoutMs` 当你需要不同的运输或时间。 预期输入失败返回 `Result`;基础设施故障传播。

提交收据描述了交付。HTTP 200表示接受；HTTP 202意味着密钥验证仍然悬而未决。 两个响应都不能证明索引。 直接客户端发送一批最多10,000个url而不重试。 托管调用方使用SDK操作，将每个批处理的url限制在1000个以内。 看到 [IndexNow协议](https://www.indexnow.org/documentation)。

## 阅读必应索引证据

使用 `gscdump/bing` 使用OAuth访问令牌或Bing网站管理员API密钥。客户端返回标记 `Result` 重视，从不从抓取证据中推断出索引判决。

```ts
import { bingWebmaster } from 'gscdump/bing'

const client = bingWebmaster({ accessToken: 'access-token' })
// API key alternative: bingWebmaster({ apiKey: 'bing-webmaster-api-key' })
const evidence = await client.getIndexingEvidence(
  'https://example.com/',
  'https://example.com/docs',
)

if (evidence.ok)
  console.log(evidence.value)

const [pages, queries, crawl] = await Promise.all([
  client.getPageStats('https://example.com/'),
  client.getQueryStats('https://example.com/'),
  client.getCrawlStats('https://example.com/'),
])
```

`accessToken` 也接受返回字符串或的函数 `Promise<string>`。 客户机在每次请求之前调用该函数，因此调用方可以在长时间导出期间刷新过期令牌。 命令行在使用时管理此刷新 `gscdump bing login --mode local --oauth`。

站点地图XML读取和遍历驻留 `sitemapd`． 产品feed范围和 精确成员散列存在 `gscdump/sitemap-identity`． 主持规范 Sitemap会员可以通过 `@gscdump/sdk/v1`。

## 公共子路径

-   `gscdump/client`：谷歌客户端和认证类型
-   `gscdump/indexing`：检查和索引助手
-   `gscdump/indexnow`：密钥验证和更改通知
-   `gscdump/errors`：谷歌API失败
-   `gscdump/sites`：站点助手
-   `gscdump/sitemap-identity`站点地图范围和成员散列
-   `gscdump/query`：查询生成器、列、操作符、太平洋日期帮助器和逻辑查询计划
-   `gscdump/query/plan`：只进行逻辑查询规划
-   `gscdump/bing`：必应站点、URL、流量、抓取证据和站点地图呼叫
-   `gscdump/dates`：明确的UTC和太平洋搜索控制台日期帮助程序
-   `gscdump/contracts`：搜索分析请求和响应契约
-   `gscdump/result`： `Result` 助手
-   `gscdump/normalize`URL规范化
-   `gscdump/tenant`：站点ID编码和规范化

托管gscdump.com客户端驻留 [`@gscdump/sdk`](https://npmcn.com/package/sdk)． 存储引擎和分析程序驻留在 [`@gscdump/engine`](https://npmcn.com/package/engine) 和 [`@gscdump/analysis`](https://npmcn.com/package/analysis)。

## 许可证

[麻省理工学院](https://npmcn.com/LICENSE)

## 常见问题

### gscdump 是什么？

直接谷歌搜索控制台和Bing网站管理员客户端键入查询和索引证据

### 如何安装 gscdump？

在项目目录运行 npm install gscdump，或使用 pnpm add / yarn add / bun add。

### gscdump 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### gscdump 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### gscdump 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22\.13\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### gscdump 可以商用吗？

gscdump 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### gscdump 还在维护吗？

最新版本 7\.9\.1 发布于 2026/11/03（今天）；至今共发布 269 个版本，其中过去 12 个月发布了 269 个；首次发布于 2026/01/18。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

