蜘蛛抓完一個頁面的正文之後,會把頁面上可跟随的連結全部收集起来,放進待抓队列。多數人優化連結时盯着 href 和 nofollow,很少留意連結的文字部分。實际上,锚文本和連結周邊的文字,是蜘蛛在還没訪問目标 URL 之前,能拿到的少數线索之一。
锚文本给蜘蛛的三條线索
目标頁大致在讲什么
同一個 URL,如果全站都用「價格表」来指它,蜘蛛大概會把它当成一份表格頁面;如果都用「某型号打印机报價與配置」,线索就具体得多。這不會直接决定排名,但會影响蜘蛛對這個 URL 的初步归類,也影响它在處理這個頁面时的预期。
這條連結是導航還是内容推荐
導航区的連結通常短、重复、全站一致,比如首頁、分類、關于我們;正文里的連結往往更長、更具体。蜘蛛從锚文本的形態和位置,大致能区分這两類連結的性质,也就能判断哪些属于站点骨架,哪些属于内容之間的關联。骨架連結几乎每次抓取都會遇到,真正的增量 URL 往往藏在内容連結里。
和目前頁的主题是否相關
一篇讲服務器配置的文章里出現指向带宽測試工具的連結,符合主题;同一篇文章里大量出現與主题無關的外鏈,連結本身的價值就會被稀释。蜘蛛並不做相關性打分,但抓取調度會參考連結所在頁面的整体质量與主题集中度。
「点击這里」這類锚文本的代價
「点击這里」「了解更多」「阅讀全文」的問题不在于难看,而在于它們把信息量几乎全部丢给了周围的文字。如果旁邊的段落寫得很清楚,問题不大;如果連結只是孤零零地出現在卡片底部,蜘蛛得到的线索就接近于零。
更麻烦的是批量生成的模板。列表頁里几十條记錄全用「查看詳情」做锚文本,指向的却是完全不同的頁面,蜘蛛只能靠 URL 和頁面内容去区分,锚文本這一层信息就浪費了。
图片連結、图标連結與按钮
图片連結的可讀线索主要来自 alt 属性。一個只有图标、没有可见文字的連結,如果 alt 也為空,蜘蛛能拿到的就只有 URL 本身。這類情况不會導致頁面抓不到,但會让連結的语义信息缺失。
用 a 或 button 包裹可见文本最稳妥;如果整站導航都用纯图标,至少要保證 alt 和相邻文字能說明去處。
連結上下文的几個细节
- 連結所在的段落或列表項文字,會被当作锚文本的补充。
- 連結所在区块的标题,比如 h2、h3,能提供一层主题框架。
- 同一屏内連結數量過多,單條連結分到的注意力會被稀释,重要連結最好放在連結密度較低的位置。
- 正文区與模板区(頁脚、侧栏)的連結在抓取路径里的角色不同,前者更适合承接需要被發現的新 URL。
可以落地的几條做法
- 重要的目标頁,锚文本寫成能概括其主题的短语,而不是「這里」「詳情」。
- 同一目标頁在全站尽量用一致或高度接近的锚文本,避免今天叫 A、明天叫 B。
- 導航和面包屑用短词,正文内鏈用更具体的描述,各司其职。
- 图片連結补上 alt,關键信息同时寫進旁邊的可见文字里。
- 不要為了塞關鍵詞把锚文本寫成一句话,讀起来別扭的連結,蜘蛛拿到的线索也未必有用。
锚文本不是排名開關,也不是抓取的通行證。它只是蜘蛛在訪問目标 URL 之前得到的提示。頁面能不能被抓到、抓完之後怎么處理,還要看目标頁的狀態碼、内容本身以及站点整体的抓取状况。
几個常见的坑
一是全站统一用「首頁」指向首頁,能走通但没有任何区分度;二是連結文字由 JS 在客戶端拼出来,HTML 源碼里是空的,依赖渲染的抓取路径不一定每次都會走完;三是用隐藏元素或极小字号塞锚文本,這種做法一旦被识別,损失的是整站連結的可信度。
與其纠结锚文本能带来什么直接好處,不如先把需要被發現的頁面,用清晰、具体的連結文字接進内鏈網絡,再確認這些頁面返回正常狀態碼、内容确實存在。抓取路径顺了,後面的判断才有意义。