直接答案:按固定规则从 25 个站点取 sitemap,15 个站点可用,抽出 73 条 URL;其中 67 条(91.8%)返回 200,5 条(6.8%)返回 404,1 条连续 3 次超时。12 个站点的抽样全部 200,3 个站点含问题条目——4 个 404 集中在 E11 一个站点。
另有 5 条发生重定向(全部在 E29,未跨主机),2 条虽然 200 但正文不足 500 字节。sitemap 发现环节:10 个站点没有可用的 sitemap(8 个 404,2 个返回 200 但没有 <loc>),按 robots 声明取到的有 10 个、按默认路径取到的有 5 个。
方法:固定发现规则、每站 5 条、失败重试 3 次
站点沿用第 4 期 25 个有可分析首页的装备企业样本。sitemap 只按两条规则发现:robots.txt 中声明的 Sitemap,或默认路径 /sitemap.xml;sitemap index 取第一个子 sitemap。解析 <loc> 后按固定间隔取 5 条(不足 5 条全取),串行请求、间隔 ≥0.6 秒,跟随重定向。非 200 或正文不足 500 字节的条目再请求 2 次(共 3 次)确认状态。
| 项 | 判定 | 边界 |
|---|---|---|
| 发现 | robots 声明的 Sitemap,或 /sitemap.xml | 其他路径不尝试 |
| 抽样 | 按位置均匀取 5 条 | 不代表整份 sitemap 比例 |
| 重试 | 非 200 或 <500 字节再请求 2 次 | 404 属确定性结果 |
| 重定向 | 最终 URL 与 sitemap URL 不同(忽略片段) | 不判断是否规范 |
| 结果分类 | 200 / 404 / 其他 4xx / 5xx / 网络错误 | 不推断原因 |
结果:九成条目可打开
| 结果 | 条数 | 占 73 条 |
|---|---|---|
| 200 | 67 | 91.8% |
| 404 | 5 | 6.8% |
| 网络错误(3 次超时) | 1 | 1.4% |
| 重定向后 200(含在 67 内) | 5 | 6.8% |
| 200 但正文 <500 字节(含在 67 内) | 2 | 2.7% |
重定向 5 条全部发生在 E29,最终主机未变;其余站点没有跨主机跳转。两条“小 200”分别是 88 与 138 字节,可能是跳转页或占位页,按结果仍记为 200。
问题集中在 3 个站点
| 站点 | 抽样 | 200 | 404 | 网络错误 | 说明 |
|---|---|---|---|---|---|
| E11 | 5 | 1 | 4 | 0 | 4 个 404 页面均为 548 字节 |
| E16 | 5 | 4 | 1 | 0 | 1 条 404,页面 4.7 KB |
| E02 | 5 | 4 | 0 | 1 | 同一 URL 连续 3 次超时 |
E11 的 4 个 404 都稳定复现,说明这些 sitemap 条目在当前站点上已不可打开;E02 的那一条三次都超时,只能记为网络错误,不能当作 404。
sitemap 发现:25 站里 15 站可用
| 情况 | 站点数 |
|---|---|
| robots 声明 Sitemap 且可用 | 10 |
默认路径 /sitemap.xml 可用 | 5 |
| 两种路径都返回 404 | 8 |
返回 200 但没有 <loc> | 2 |
可用 sitemap 的 URL 数量从 3 条到 1,043 条不等,中位约 180 条;E18 的 sitemap 只有 3 条,因此该站只抽到 3 条。sitemap 路径本身不在本期结论内——未尝试 /sitemap_index.xml 等变体,因此“没有可用 sitemap”是**按本规则**的结果。
与第 2 期 sitemap 结构扫描对比
| 口径 | 第 2 期(结构) | 本期(可打开性) |
|---|---|---|
| 站点 | 25 | 25 |
| 可用 sitemap | 13 | 15(规则略有放宽) |
| 检查对象 | 文件是否 XML、URL 数、lastmod | 抽样 URL 的 HTTP 结果 |
| 抽样 URL | 0 | 73 |
| 发现的问题 | 数量与 lastmod 覆盖 | 5 条 404、1 条超时 |
第 2 期回答“sitemap 文件长什么样”,本期回答“里面的 URL 能不能打开”。两期样本相同、时间相隔 4 天,可用 sitemap 数量从 13 变为 15,说明发现规则与站点状态都会影响这个数字,不宜当成站点改善。
对验收的启示
- 把“sitemap 能打开”写进验收。 文件存在不等于条目可用;本期 73 条里有 6 条不可用或异常。
- 抽样即可发现集中问题。 每站 5 条就能看出 E11 的 4 条 404,成本低。
- 404 与超时要分开记。 E02 一条三次超时只能算网络错误,不能写成页面不存在。
- 关注“小 200”。 2 条正文不足 500 字节仍返回 200,可能是跳转页或占位页。
- 重定向要单独统计。 5 条重定向虽未跨主机,但最终 URL 已与 sitemap 不同。
局限
- 发现规则固定:只试 robots 声明与
/sitemap.xml;其他路径的 sitemap 可能漏计。 - 每站 5 条:只能作“是否存在问题条目”的信号,不能推算整份 sitemap 的失败率。
- 单次快照:2026-11-05 夜间抓取;超时与防护可能随时间和网络变化。
- 不推断原因:404 只说明该 URL 当前不可打开,不判断改版、迁移或防护。
- 200 不等于内容可用:未渲染 JS、未判断软 404 与正文质量。
- 25 站 pilot:不外推行业总体。
数据与复算
匿名数据:equipment-sitemap-url-resolution-2026.csv(73 行 × 13 列:站点编号、sitemap 来源与状态、URL 数、抽样序号、HTTP 状态、结果分类、重定向、跨主机、字节数、小页标记、尝试次数、错误类型)。仓库内为 docs/research/2026-11-sitemap-url-resolution.csv。公开 CSV 不含具体 URL。
解析与分类:scripts/sitemap_url_probe.py;单元测试 scripts/test_sitemap_url_probe.py(无网络,12 项)。运行:
python -m unittest scripts.test_sitemap_url_probe
配套:sitemap 结构 pilot、robots 扫描、sitemap 检查器。
数据来源与口径
- 站点:第 4 期 25 个可分析首页样本(2026-10-31)。
- 抓取:2026-11-05 22:41–22:44,串行、间隔 ≥0.6 秒,跟随重定向。
- 重试:非 200 或正文 <500 字节的条目共请求 3 次。