Coolkid mascot CoolkidLab Build in Public. Level up together.
首頁新手教學免費工具AI 新聞GitHub 精選服務關於 Coolkid

Workflow · SEO 開源工具

文章撞稿檢查:找出互搶排名的文章與沒人連的孤島頁

閱讀

SEO 開源工具

站上文章寫多了一定會遇到:兩篇太像,搜尋引擎分不清誰該排名,結果兩篇都排不好。這叫撞稿。這個工具掃你整個站,用「用詞重疊度」把三種問題頁一次列出來。

開源工具 · 可直接安裝

github.com/Coolkidlab-Yin/article-overlap-checker

/plugin marketplace add Coolkidlab-Yin/Coolkidlab
/plugin install article-overlap-checker@coolkidlab

在 Claude Code 輸入上面兩行即可安裝。裝完直接說你想做什麼,AI 會照 skill 的 SOP 帶你建;原始碼與 README 都在 GitHub。

摘要

article-overlap-checker 是免費開源的站內診斷工具:掃 HTML 資料夾或 sitemap,回報三件事 — 撞稿候選(兩頁互搶同一排名)、太接近預警(新選題撞線)、孤島頁(缺內鏈脈絡)。純 Python 零依賴、CJK 字元 bigram 中英通吃、0.33 秒掃 50 頁。在一個當時 75 頁的站上,實際抓出過相似度 0.744 的真實撞稿。

它回報的三件事

撞稿候選:兩頁相似度超標,搜尋引擎可能分不清誰該排名。這是最傷排名的一種內部問題。

太接近:還沒撞但快了,當成新文章選題的預警線。

孤島頁:跟全站都不像、缺內部連結脈絡的頁面。解法是補內部連結,不是刪頁。

怎麼跑

本機掃:python semantic_map.py --dir 網站輸出資料夾 --out report.md

建議掃整個站,只掃子資料夾會高估孤島。

線上掃:--sitemap 加你的 sitemap 網址。跑完打開 report.md 就是完整報告。

讀報告的原則

閾值是經驗值不是鐵律。預設 0.62 / 0.55 是在一個 75 頁繁中站校準的,第一次跑先看分布再調。

撞稿候選要人工複核搜尋意圖。教學跟比較兩種意圖即使相似度高也能共存。真撞稿是「同一個搜尋意圖有兩個入口」。

侷限(誠實告知)

這個方法比的是用詞重疊,抓得到「兩篇用了同一批詞」,抓不到「換句話說的同義」。

頁面正文要超過 200 字才納入。

社群短貼文詞太少,分數會普遍偏低(實測中位數只有 0.016),只能當粗篩。

工具給訊號,判斷還是人來。

這個工具實際抓到過什麼

這工具是網站寫到 75 頁時做出來的。

它抓出兩篇比較文相似度 0.744 的真實撞稿,還診斷出整個站的主題漂移——帶最多流量的頁反而拖累想排的詞。

完整故事在 SEO 連載 #25,文末相關閱讀有連結。

站內的重複清完,下一個問題通常是「還缺哪些主題」。這時候換對手內容作戰地圖上場:掃對手的 sitemap,找出他們寫了、你還沒動筆的空白。

完整 SOP 清單

repo 內含下列東西,clone 下來就能跑:

看完這篇之前先確認:

適合你
  • 站上超過 30 篇、開始分不清有沒有互搶排名的人
  • 寫新文章前想確認「這題是不是寫過了」的人
  • 想找出站內孤島頁補內鏈的人
不適合
  • 站上文章少於 10 篇(還不會撞稿,先寫)
  • 想拿它掃社群短貼文(詞太少,分數不可靠)

常見問題FAQ

什麼是 keyword cannibalization(撞稿)?

同一個搜尋意圖你有兩個以上的頁面在搶,搜尋引擎分不清該給誰排名,常見結果是兩頁都排不好。合併或分工是常見解法,但要先確認真的是同一個意圖。

需要安裝什麼?

零依賴,純 Python 標準庫。有 Python 3.10+ 就能跑,不用 pip install。

中文網站能用嗎?

能,這是它的設計重點之一 — CJK 字元用 bigram 處理,中英混排通吃。它本來就是在一個繁中站上開發校準的。

多久跑一次?

兩個時機:寫新文章前(確認選題沒撞線)、寫完後(確認沒製造新撞稿)。全站健檢一季一次就夠。

名詞解釋

SEO(搜尋引擎優化)
讓網站在 Google 搜尋結果排得更前面的一整套方法,涵蓋技術體質、內容品質、連結結構三層。
網站地圖(sitemap)
列出網站所有頁面跟最後更新日的清單檔(sitemap.xml),交給搜尋引擎加速發現與重抓你的頁面。
命令列(CLI, Command Line Interface)
用打字指令操作電腦的方式,沒有按鈕跟視窗。Claude Code 就是命令列工具。
TF-IDF(用詞重疊度)
比較兩篇文章像不像的老方法:看它們用了多少相同的詞,並把「到處都有的常見詞」降權。抓得到用詞重疊,抓不到換句話說的同義,只能當粗篩。
keyword cannibalization(撞稿)
同一個網站有兩篇以上文章瞄準同一個搜尋意圖,搜尋引擎分不清該讓誰排名,結果兩篇都排不好。解法是合併、改角度,或明確分工。
HTML
網頁的骨架語言,定義「這是標題、這是段落、這是圖片」。
repo(專案倉庫)
GitHub 上的一個專案資料夾,裡面放程式碼、說明文件跟修改紀錄。一個 repo 就是一個獨立的專案。
Python
入門門檻最低的主流程式語言之一,資料處理、自動化、AI 領域的首選。

全站名詞表 · 166 條 →

不想錯過 Lab 的新文章?
訂閱後有新文章上線,就寄信通知你,
點有興趣的進來看就好。

填 email 就完成訂閱(信由 Substack 代寄)、隨時取消、不轉賣 email。

如果內容對你有用就太好了
隨喜斗內

Buy Me a Coffee at ko-fi.com

← 回免費工具

⚠ 本站所有內容僅供教育與研究用途,不構成投資建議,不保證任何獲利。投資有風險,使用者須自行判斷並承擔結果。
TAO 道 · Hikari Zen YouTube ↗
音樂透過 YouTube 播放
♪ TAO 道 · Hikari Zen — Japanese Zen Music(YouTube)