UGC 頁面為什么會越收越多
评论、問答、论坛帖、用戶主頁、标簽聚合,這些頁面通常由系統自動生成,數量随用戶活跃度线性增長。它們有真實内容,也有大量空壳:一個只發過一句“顶”的用戶主頁,一個只有标题没有回复的帖子,一個把同一條内容換成不同排序的标簽頁。
搜尋引擎不會自動区分這些。只要 URL 可抓取、返回 200、頁面上有文字,就有被收錄的可能。問题在于,收錄本身不带来流量,反而會占用抓取资源,還可能让真正有價值的頁面在站内竞争中吃亏。
先给 UGC 頁面分层
不要用“全部收錄”或“全部屏蔽”這種一刀切的做法。實际操作中,按頁面是否有獨立信息量分成三层更稳妥。
第一层:有獨立價值的頁面
- 長期积累的問答帖、教程帖、讨论帖,正文和回复都有實质内容
- 用戶主頁里有成体系的原创内容,而不是只有一條轉發
- 评论數量多、讨论质量高的内容頁
這類頁面可以正常放開抓取和收錄。它們往往能承接長尾搜尋,也是社区類站点流量的一部分来源。
第二层:聚合與排序頁面
- 标簽頁、话题頁、作者归档頁、按時間或热度排序的列表
- 同一批内容因為排序參數不同生成的多個 URL
這類頁面不是完全没有用,但重复度高、更新频繁。常见的做法是保留主入口,對排序、頁碼、篩選组合做參數收敛,或统一 canonical 到無參數的版本。
第三层:基本没有内容承载的頁面
- 空白用戶主頁、註冊但未發内容的帳號
- 零回复的短帖、只有一行字的提問
- 搜尋结果頁、站内跳轉頁、登入後可见的临时頁
這一层通常不值得進索引。可以在服務端判断内容量,低于阈值时返回 noindex,或者用 robots.txt 屏蔽對應的 URL 規則。
判断一個 UGC 頁该不该收錄,看几個信号
- 正文体量:去掉導航、评论框、相關推荐後,頁面主体還剩多少可讀文字。低于几百字的頁面通常價值有限。
- 唯一性:把頁面正文和其他 URL 對比,看是否只是同一内容的另一種排列。
- 是否有人搜尋:在站内搜尋日誌或外部關鍵詞工具里,這類頁面有没有被搜到過。完全没有搜尋需求的類型,收錄了也难有展現。
- 更新频率:高频變動但内容不增量的頁面,抓取成本高而收益低。
- 是否可稳定訪問:需要登入、依赖會话、返回随机结果的頁面,抓取本身就不可靠。
常见處理手段與容易踩的坑
- noindex 要放在服務端:如果标簽由前端渲染,爬虫拿到的 HTML 里可能没有這個指令,等于没寫。
- robots.txt 屏蔽要判断清楚:屏蔽抓取後頁面不會被抓,但如果之前已被收錄,可能長期停留在索引里,且無法通過 noindex 移除。
- canonical 別乱指:把有價值的問答帖 canonical 到列表頁,會直接把内容归属让出去。
- 内容阈值要留余量:阈值设得過高,會誤伤刚發布但後續會成長的頁面。
- 分頁與“加载更多”:异步加载的後續内容如果爬虫拿不到,收錄的只是第一屏。
收口後的复查顺序
調整完策略不要立刻看结果,按下面的顺序核對更省事。
- 先確認屏蔽規則是否真的生效:用抓取工具模拟,看返回的狀態碼和頁面里的指令。
- 再看索引變化:已收錄的頁面不會马上消失,通常要经歷重新抓取、重新判断的過程。
- 對比屏蔽前後的抓取日誌:重点頁面的抓取次數是否上升,服務器压力是否變化。
- 观察流量结构:被屏蔽類型带来的搜尋流量是否明顯下降。如果下降明顯,說明屏蔽范围過大。
UGC 的收錄取舍没有一次到位的答案。社区在成長,頁面價值也在變化,比較實际的做法是定期回看一次分层标准,把新出現的頁面類型补進去,而不是设完規則就不再管。