搜索抓取

筛选参数与站内搜索:蜘蛛被参数 URL 拖住时怎么收口

带筛选和站内搜索的网站,URL 会按参数组合成倍增长,蜘蛛顺着内链走很容易把抓取预算耗在重复内容上。本文讲怎么区分高价值筛选页与低价值组合页,通过收敛内链入口、统一参数、使用 canonical 与合理的 robots 规则控制抓取范围,并验证调整后蜘蛛的抓取分布是否回到有效页面。

搜索抓取

筛选参数与站内搜索:蜘蛛被参数 URL 拖住时怎么收口

参数 URL 是怎么繁殖出来的

带筛选的电商站、房源站、内容列表页,只要支持排序、价格区间、颜色、品牌、页码组合,URL 就会按乘法增长。一个分类下有 20 个品牌、5 个价格区间、4 种排序方式,理论组合就上千个,而这些页面展示的内容高度重叠。

蜘蛛不认识你的业务逻辑,它只认链接。只要内链里存在这些组合,它就会顺着走;如果一个筛选页还带着指向其他筛选组合的链接,抓取路径会像树一样展开,越走越深。结果不是内容变多了,而是同一批内容被反复取了很多次。

先分清三类页面

  • 有价值的筛选页:有稳定搜索量、内容差异明显、能独立回答用户需求,比如按区域或品类划分的固定页面。
  • 低价值的组合页:只是把同一批条目换个顺序或换个颜色再列一遍,内容与主页面高度重复。
  • 纯操作型页面:排序、每页条数、会话 ID、来源追踪参数,本质上不产生新内容。

分不清这三类,很容易一刀切全部屏蔽,把本来能带来流量的筛选页也一起关掉。

收敛入口比事后屏蔽更有效

蜘蛛发现 URL 靠的是链接。只要内链里不给低价值组合留入口,很多参数页根本不会被发现。常见做法:

  • 筛选控件用按钮或表单提交,而不是一堆可抓取的链接;
  • 需要保留的筛选组合,链接固定成一条,不做可再叠加的多层链接;
  • 列表页只暴露默认筛选,其余组合放在前端交互里;
  • 排序、每页条数这类参数不进入内链。

已经存在的参数 URL 怎么处理

统一参数顺序与命名

同一组参数因顺序不同会产生多个 URL,比如两个参数位置互换就是另一个地址。统一参数顺序、去掉无意义参数(会话 ID、跟踪码),能直接消掉一批重复地址。

用 canonical 指向规范版本

内容确实相同、又必须保留可访问的页面,用 rel=canonical 指回主版本。canonical 是提示而不是命令,配合内链收敛,效果才更稳。

robots.txt 屏蔽要谨慎

被 robots 屏蔽的 URL 如果还有内链指向,蜘蛛仍可能持续发现但不去抓,长期积累成大量已发现未抓取的队列噪音。屏蔽更适合处理纯技术参数,比如排序、每页条数,而不是有真实流量的筛选页。

Sitemap 里只放规范 URL

把参数页塞进 Sitemap,等于主动邀请蜘蛛去抓。Sitemap 只提交规范、稳定、希望被抓的地址,重复入口越少,清单越可信。

站内搜索页要单独处理

站内搜索结果页通常是无限组合,用户输入什么就生成什么 URL,也容易被外部链接引用。这类页面一般不建议大量暴露给蜘蛛:要么限制可抓取范围,要么只保留少量固定关键词入口,并给结果页加 noindex。如果站内搜索确实带来流量,可以单独评估,把有搜索量的关键词做成静态专题页,而不是让参数组合自己长出来。

调整后怎么验证

  1. 看服务器日志:抓取请求里参数 URL 的占比是否下降;
  2. 看有效页面的抓取量是否上升,而不只是看总量变化;
  3. 观察已发现未抓取的队列里,是否堆着大量参数地址;
  4. 抽查 canonicals 是否被采纳,规范版本是否被抓;
  5. 确认屏蔽没有误伤带来流量或转化的页面。
参数本身不是问题,失控的参数组合才是。控住入口、说清规范、只屏蔽纯技术参数,比事后一封了之更稳妥。

小结

参数 URL 的治理核心是减少入口、明确规范、保留价值。先弄清哪些筛选组合真的有人搜、内容差异明显,再决定保留、合并还是屏蔽。抓取预算有限,让蜘蛛把请求花在主页面和真正有差异的页面上,比多抓几千个重复地址更有意义。