蜘蛛发现 URL 的主要途径是链接,而不是凭空猜测。一个页面从首页出发点几次能到达,往往决定了它会不会被早一点抓到、能不能顺利进入索引流程。Sitemap、站内搜索、外链都能起到补充作用,但日常最可控的还是内链结构。
蜘蛛是怎么沿着链接走的
抓取通常从几个入口页开始,顺着 a 标签的 href 向外扩散。这个过程是有预算的:站点每天能抓的 URL 数量有限,蜘蛛会优先走那些离入口近、更新频繁、历史表现稳定的链接。层级越深的页面,被排进抓取队列的时间就越靠后,有些页面可能几周都轮不到一次。
这也解释了一个常见现象:首页和栏目页刚改完内容,很快就能看到新版本;而藏在第四层、只有两三处入口的详情页,改了标题几周都没有动静。
入口不只在站内
外部链接、友情链接、社交平台分享、手动提交 URL,都会给站点带来额外的爬取机会。站外引导的质量比数量重要,来源杂乱或明显批量生成的链接,带来的抓取往往不稳定,也不值得把发现新页面的希望全押在上面。
判断链接深度时容易忽略的几点
- 点击深度不等于链接深度。有些页面要从列表翻好几页才能点到,但面包屑或相关推荐里有直达链接,实际深度并不深。
- 列表分页会不断加深路径。翻到第 20 页的内容,被抓到的概率已经很低,等于被埋在列表末尾。
- JS 插入的链接要看能不能被抓到。如果 a 标签是渲染后才出现的,而蜘蛛没有执行脚本或执行不完整,这些链接就等于不存在。
- 孤立页面。没有任何站内链接指向、只能靠 sitemap 被发现的 URL,抓取频率通常低得多。
哪些写法会让链接断在半路
- 用 div 或 span 加 onclick 跳转,没有真正的 href。
- href 写成 javascript:void(0)、“#”或空值。
- rel=“nofollow”用得过于随意,把本来需要收录的页面也一起挡了。
- 链接藏在表单提交、图片热区、需要展开的下拉菜单里。
- 导航用了前端路由,但服务端返回的 HTML 里没有任何对应链接。
把重要页面往上提的几种做法
- 减少不必要的层级。两步能到达的页面,不要设计成四步。
- 给每个内容页至少留一条来自高权重页面的直达链接,比如栏目首页、专题聚合页、热榜。
- 面包屑和相关推荐不要只做装饰,确保它们是真实的 a 标签链接。
- 分页用可抓取的链接,或者提供“查看全部”的聚合页来承接长尾内容。
- 用 sitemap 兜底,尤其是新上线和深层页面,但要清楚它只是提示,并不保证被抓。
内链不是配额游戏
有人把内链当成给页面投票,在页脚堆链接、在正文里塞几十个锚文本。这种做法通常适得其反:页面上的链接一多,每条链接分到的注意都变薄,页面本身也容易被当成低质量集合页。
内链解决的是“能不能被发现”,收录解决的是“值不值得留下”。链接做通了,页面内容依然单薄、和站内其他页面高度重复,索引里照样可能留不下它。
比较务实的顺序是:先用内链和 sitemap 保证重要页面能被稳定发现,再回头处理内容质量和重复问题,最后才去看收录状态里的各种细节。发现、抓取、索引是三件事,内链只管第一件,但第一件没做好,后面两步就没有机会开始。