管理员仪表盘现在可以识别可能的爬虫流量——即使用真实浏览器 JavaScript 但并非人类访客的自动化机器人和抓取程序——并将这些页面浏览量从您的真实流量数据中分离出来。
在本主题中,我们将分享我们如何着手识别此类流量,以及您今天如何启用此功能。
变化内容
Discourse 一直将那些使用标准机器人用户代理(例如 Googlebot)自我标识的 Crawlers 过滤到站点流量数据的独立类别中。但现代自动化流量更加隐蔽:它运行完整的浏览器,执行 JavaScript,并像真实访问一样融入您的页面浏览量数据中。管理员可能会在 Anonymous(匿名)页面浏览量中看到实际上为抓取程序造成的流量激增,或者看到被 AI 机器人虚增的访客数量——且无法区分这些流量与真正的匿名(即未登录)人类流量。
此更新为站点流量数据添加了 Likely Crawlers(可能的爬虫)类别。当启用改进的爬虫检测功能时,我们的启发式算法标记为可能自动化的页面浏览量会被单独拆分出来,从而使您的人类流量数据更加准确。
检测原理
系统使用一组行为信号对每个浏览器页面浏览量进行评分:
- 自动化用户代理 — 用户代理 (UA) 明确命名无头浏览器或自动化工具(如 HeadlessChrome、Playwright、Puppeteer、Selenium、PhantomJS、jsdom)
- 已验证的爬虫 ASN — IP 的自治系统编号 (ASN) 属于已知的爬虫网络(如 Baidu、Ahrefs、Yandex、Internet Archive 等)
- 数据中心 ASN — IP 位于主要云服务商或托管提供商的地址空间内
- 速度 — 该 IP + 用户代理每小时生成的页面浏览量异常多
- 快速导航 — 页面浏览量之间的中位间隔小于 5 秒
- 会话流失 — 来自同一 IP + 用户代理的许多短会话(大多只访问一页)
- 缺乏参与度 — 会话及其邻近会话没有记录到类似人类的交互(鼠标移动、按键、滚动)。此信号对匿名流量的权重高于登录流量。
- 不良来源比例 — 大多数页面浏览量没有来源或来源为外部,表明是直接通过 URL 访问而非通过站点导航而来
- 单次直接请求 — 单次无参与的页面浏览量且无来源;如果 URL 携带语言区域参数,则评分更高
- 快速 IP 轮换 — 单个会话内使用多个 IP,切换速度快于人类操作
- 过时的 Chromium — 没有参与信号的过时 Chrome 版本
- 分布式流量 — 某些爬虫会轮换 IP 地址,并为几乎每次页面浏览量启动新会话。我们现在会在共享用户代理且共享网络或外部来源的匿名访问中查找模式
多个信号的评分会叠加;当页面浏览量具备一定数量的上述信号时,我们将其分类为 likely crawler(可能的爬虫)。
在您的社区中启用改进的爬虫检测
目前,这被视为一项实验性变更。 我们仍在调整检测启发式算法,并欢迎反馈。
要启用此功能,请前往您管理区域的 即将推出的更改 页面,找到 Improved crawler detection(改进的爬虫检测)项目。更新 Enabled for…(启用对象…)字段以将您的站点加入该功能。
启用后,您管理仪表盘的“站点流量”部分将把可能的爬虫显示为独立类别。
重要提示:
- 这不是一门精确科学,我们将随着时间推移继续完善我们的启发式算法。但是,我们在更新这些计算时不会回填历史数据。
- 将页面浏览量分类为可能的爬虫 不会 拒绝或限制请求速率。
- 可能的爬虫页面浏览量 排除 在来源、国家/地区和其他流量细分之外——这与目前处理已知爬虫的方式相同。
- 对检测规则的更改不会自动重新处理所有历史流量。
您怎么看?
我们很想听取您的反馈——特别是来自那些注意到异常流量模式或无法解释的激增的社区的反馈。您的站点数据看起来是否准确?是否有访问被标记为爬虫但您觉得是真实用户?请在本主题中分享您的发现。

