中央的文章页面与菜单、评论和页脚卡片分开显示。

如果你需要自己网站所有已知的页面,请先查看自己的网站页面清单和 Google Search Console 中的依据。这些网站所有者记录更适合回答这个问题。公开搜索导出只能回答所选搜索中出现了哪些结果。Google 明确说明,`site:` 结果并不完整,已编入索引的地址也不保证会出现在结果中。Google 站点搜索指南 — 2026年10月25日已核查;说明搜索局限,不提供完整的网站页面清单

对于范围明确的公开搜索样本,Chronometrica 的 Google Search Scraper 文档提供了一种实用的电子表格格式:每条结果观测记录保存为一行。一条观测记录,是指在特定搜索、结果页和位置下记录的一条结果。Actor 是托管运行的数据采集程序。Actor 负责采集这些行;你需要核查导出内容,并说明其局限。Chronometrica Google Search Scraper — 2026年10月25日已核查规范;未进行付费运行

1. 明确电子表格必须回答的问题

将“全部结果”改为可以核查的请求。例如:“使用美国和英语设置,为一个查询保存最多10条 Google 网页搜索观测记录。”

条数上限是指在每个搜索引擎上,针对每个已执行查询,采集最多允许保存的行数。它不保证来源会返回这么多行。

采集前,请记录以下决定:

  1. 说明列表的用途。你可能需要用于主题审核的候选页面,或用于证明哪些目标地址曾出现在结果中的记录。
  2. 保存准确的查询文本。保留其拼写、标点和所有搜索运算符。
  3. 首次导出时,选择 Google 作为搜索引擎。
  4. 设置你要请求的国家和语言。
  5. 设置行数上限,并记录是否包含广告结果。
  6. 明确电子表格在使用前必须通过哪些检查。

搜索运算符是用于要求搜索引擎缩小搜索范围的文本,例如 `site:`。搜索引擎负责解释它。运算符不能将搜索结果变成完整的网站页面清单。

请明确问题涉及的数据来源。Google 自定义搜索引擎与本文所述的 Google 网页搜索采集不是同一种来源。所提供的证据不能证明该 Actor 兼容 Google Custom Search API。API 是程序之间交换数据的接口。有人公开提问,如何将自定义搜索引擎的结果导出到 Excel,但该问题不能证明此 Actor 支持这种操作。公开的电子表格问题 — 2026年8月11日观察到;发布日期未知,仅涉及 Custom Search

本方法针对公开网页搜索观测记录。它不能证明 Google 地图覆盖范围、搜索量、网页索引的完整性,或对仅限网站所有者访问的记录的访问能力。

2. 采集前保存一份小规模采集输入

可以从以下提供的输入开始。JSON 是一种文本格式,用于存储带名称的值和列表。

json
{"country":"US","engines":["google"],"includeSponsoredResults":false,"language":"en","maxResultsPerExecutedQuery":10,"queries":["small business invoice approval workflow"],"safeSearch":true}
2. 采集前保存一份小规模采集输入

这份输入已通过公开默认构建版本的输入规则检查。本指南未实际运行这份输入。该检查确认了输入格式和允许的值,但不能确认 Google 返回了结果。公开默认构建版本 1.0.15 — 2026年10月25日已核查;已检查输入规则,未进行付费运行

按以下顺序替换示例值:

  1. 用你要执行的查询替换整个 `queries` 列表。首次核查时只保留一个查询。
  2. 使用本方法时,将 `engines` 保持为 `["google"]`。
  3. 如果你要执行的搜索使用其他设置,请替换 `country` 和 `language`。`US` 表示请求美国设置;`en` 表示在支持的情况下请求英语设置。
  4. 将 `maxResultsPerExecutedQuery` 设置为你选择的上限。已核查的范围为1至100。
  5. 保存输入前,检查 `safeSearch` 和 `includeSponsoredResults`。

`safeSearch:true` 要求支持此设置的搜索引擎过滤露骨内容。搜索引擎可能采用各自的地区规则。`includeSponsoredResults:false` 会排除广告结果。如果启用广告结果,文档所述的输出包含用于此用途的 `isSponsored` 和 `advertiserDomain` 字段。

将完整输入与采集记录一起保存。输出字段不能替代输入记录。尤其要保留广告结果设置,使其他读者能了解你请求了哪些结果。

你也可以从公开的将搜索结果导出为 CSV 的 Task — 2026年10月25日已核查;已确认公开存在,未检查已保存的输入 开始。Task 是为 Actor 保存的输入预设。使用前,请替换其中的示例查询,并检查每项已保存的设置。对公开页面的核查并未确认其保存的值与上面的输入一致。

3. 导出前检查采集状态

以下步骤是建议读者执行的操作。本指南未运行采集程序。

启动采集后,请先检查最终状态和摘要,再将数据集视为可用。数据集是已保存的结果行集合。请同时保留数据集,以及说明采集过程情况的摘要。

按以下顺序操作:

  1. 检查运行是成功完成、失败,还是中断。
  2. 查看记录的采集停止原因。
  3. 检查报告中的 Google 结果数量,以及所有搜索引擎层面的失败信息。
  4. 将已保存数量与请求上限比较。
  5. 将任何访问受阻、过滤或来源结果耗尽的信息与导出文件一起保存。

来源结果耗尽,是指采集已到达该请求所能取得的结果末尾。这不能证明 Google 没有其他已编入索引的页面。

请区分以下状态:

3. 导出前检查采集状态
记录的状态可以报告的情况仍未得到证明的事项
已达到上限采集已保存达到请求上限的行数是否还有更多可用结果
来源结果已耗尽可用的来源结果结束后,采集随之停止是否完整覆盖 Google 或该网站
来源访问受阻或请求失败采集遇到访问或执行问题是否存在匹配的结果
结果已被过滤过滤影响了结果集被排除的结果集包含哪些内容
停止状态缺失或不明确原因未知为何采集在未达到上限时结束

如果运行已结束,但保存行数少于请求数量,就需要说明原因。这不一定表示失败,也不一定表示结果完整。

如果数据集与摘要不一致,请保留原始记录,并暂缓使用电子表格,等待审核。不要添加空白行来凑够上限。不要用请求上限代替实际保存的数量。

4. 导出时保持来源值不变

从已完成的数据集中导出 CSV 或 JSON。CSV 用文本存储表格值,通常以逗号分隔。编辑电子表格副本前,请保留下载的原始文件。

通过电子表格软件的导入功能导入文件。将标识符和网址设置为文本。也要在文本列中保留原始时间戳字符串。自动转换日期或数字可能改变值的形式,使其更难与来源比较。

保留文档所述的以下结果字段:

4. 导出时保持来源值不变
字段需要保留或核查的内容
`runId`将观测记录关联到对应采集运行的标识符
`country`为该结果记录的国家设置
`language`为该结果记录的语言设置
`safeSearch`记录的露骨内容过滤设置
`engine`该观测记录所属的搜索引擎
`executedQuery`该观测记录对应的准确查询
`page`记录的搜索结果页码
`rankOnPage`记录的结果在该页中的位置
`rank`记录的结果在该次搜索中的位置
`title`返回的搜索结果标题
`canonicalUrl`返回的经过规范化处理的候选地址
`resultDomain`返回的目标域名
`snippet`返回的搜索结果文本
`isSponsored`返回的广告结果标记
`advertiserDomain`返回的广告主域名(如有提供)
`observedAt`记录的观测时间
`schemaVersion`输出格式版本的标识符

这些字段来自已核查的公开输出规范。Chronometrica Google Search Scraper — 2026年10月25日已核查;文档所述字段,未通过实际运行验证

`canonicalUrl` 是经过规范化处理的候选地址。这个名称不能证明有人检查过目标页面的 HTML canonical 标签。该标签用于标明首选页面地址。这个字段也不能确定原始链接文本或原始地址。

摘要是搜索结果中的文本,不是抓取到的文章正文。缺少摘要不表示目标页面为空。排名记录的是结果位置,不能衡量访问次数或流量。

将几行导入后的数据与原始文件比较。检查现有值中含有逗号、引号、换行或非英语字符的值。确认每个值都留在正确的列中。

如果 CSV 无法保留缺失值与空字符串的区别,请保留 JSON 作为来源参考。电子表格需要区分两者时,请在单独的审核列中记录这种区别。

5. 分别统计观测记录和目标地址

行数与唯一目标地址数回答的是不同的问题。

观测记录数说明你保存了多少条结果记录。唯一目标地址数说明,按你声明的计数规则,返回的地址中有多少个不同地址。

首次导出时,请按完全相同的 `canonicalUrl` 字符串识别同一目标地址。这样可以避免在未说明的情况下合并路径或参数不同的地址。这个数量仍只是返回的不同地址数,不代表经独立核实的不同页面数。

保持观测记录表完整。需要目标地址列表时,请在单独的工作表中建立。如果同一地址出现在两个不同的结果位置,请保留两条观测记录及其位置。

导出行重复是另一类问题。如果因为文件导入了两次,导致同一条已保存记录出现两次,请调查该导入错误。不要仅凭目标地址重复,就认定观测记录是重复副本。

如果需要合并导出文件,请参阅如何合并 Bing 搜索导出文件,同时保留查询和排名依据。该指南针对 Bing 导出文件。其中分开的观测记录表和目标地址表有助于解释两种计数的区别,但不能为本文的 Google 方法提供实际运行证据。

每次计数时都要保留缺失值。排名缺失表示未知,不表示排名为零。结果数量缺失表示未知,不表示已确认数量为零。只有来源证据支持在所述采集范围内数量为零时,才记录零。

6. 原创虚构示例:16条观测记录,15个目标地址

本节整个操作示例均为原创虚构内容。其中的运行、时间、结果位置、目标地址和数量均为教学而编造。它不是 Actor 测试,也不是客户结果。

一名分析师使用一个 Google 查询:“小企业发票审批流程”。分析师请求美国和英语设置,保持安全搜索开启,并关闭广告结果。

仅在这个虚构示例中,分析师将所提供输入中的10条观测记录上限改为20条。采集保存了16条观测记录。虚构摘要报告,来源结果已耗尽。

两条观测记录返回了相同的地址:

6. 原创虚构示例:16条观测记录,15个目标地址
虚构记录搜索引擎排名返回的地址观测时间
观测记录 AGoogle3`https://workflow.example/invoice-approval``2026-10-24T14:00:00Z`
观测记录 BGoogle11`https://workflow.example/invoice-approval``2026-10-24T14:00:00Z`

其余14条观测记录的地址各不相同,也都不同于上面的共同地址。

各项数量可以核对如下:

  • 观测记录数:2条目标地址相同的观测记录 + 14条其他观测记录 = 16条观测记录。
  • 唯一目标地址数:1个共同目标地址 + 14个其他目标地址 = 15个目标地址。
  • 未使用的上限额度:允许保存的20条观测记录 − 已保存的16条观测记录 = 比上限少4条观测记录。

这4条只是未使用的额度,不是已知缺失的4条结果。上限无法说明 Google 全部匹配结果的数量。

分析师的虚构采集记录如下:

6. 原创虚构示例:16条观测记录,15个目标地址
项目虚构记录值
查询小企业发票审批流程
搜索引擎Google
国家和语言已请求美国和英语设置
广告结果已排除
安全搜索已请求
请求上限20条观测记录
已保存行数16条观测记录
返回的唯一目标地址15个按字符串精确区分的地址
核查时间`2026-10-24T14:00:00Z`
停止状态来源结果已耗尽

一份合适的虚构覆盖范围说明如下:

不要将本示例描述为返回了20条结果。不要将其描述为所有已编入索引的页面。用16除以上限20,只是在比较已保存行数与允许额度,不能衡量 Google 覆盖率。

7. 验收电子表格并记录其局限

在报告或其他流程中使用文件前,请执行以下验收检查:

  1. 核对请求。确认搜索引擎、已执行查询、国家、语言和已保存的输入设置。
  2. 核对行数。将原始数据集数量与导入后的观测记录数比较。说明任何差异。
  3. 检查字段。确认导入后完整保留了标识符、地址、查询文本和时间。
  4. 分别计数。按明确说明的地址规则,报告观测记录数和唯一目标地址数。
  5. 保留未知状态。如果来源允许区分缺失值、零和空文本,就保留这些区别。
  6. 附上停止依据。记录最终状态、已知失败和采集结束的原因。
  7. 编写覆盖范围说明。写明上限、已保存行数、唯一目标地址数、设置、实际核查时间和来源局限。

如果缺少观测时间,请明确说明。如果记录的是你自己的检查时间,请将其标为检查时间。不要将其填入 `observedAt`,使人误以为它由来源提供。

格式整洁的电子表格不能证明目标页面可访问或与需求相关。如果下一步是采集页面,请单独审核目标地址。Bing 抓取队列指南 说明了这一后续审核任务。该指南使用的搜索来源是 Bing;你可以通过它了解如何接受或拒绝目标地址,以及如何处理尚未确定的检查结果。

只有在满足明确需求时,才添加另一个查询。你可能需要不同的主题词或市场。请将该搜索作为另一个范围明确的样本保存。重复搜索不能证明结果完整。

来源和延伸阅读

作者 Chronometrica · 更新日期

返回顶部 ↑