OGICOのInstagram

【Python】競合サイトとの検索対策の差分を可視化するツール – SEO対策の無料ツール –

seo-analyzer
雑記

指定URLをクロールし、SEO対策に必要な項目を比較するツールをPythonで作ってみました。無料です。
SEO対策にご興味あるかたはご自由にご利用ください。
有用だと思われましたら、SNS等でご紹介いただけますと幸いです。

仕様

本ツールは、入力された自社サイトと競合サイト(最大10件)のHTML構造およびテキストデータを自動でスクレイピングし、SEOにおける主要な内部指標を定量的に比較・可視化するシステムです。日本語の形態素解析にはMeCabを利用しています。
分析時間は、URL数により異なることがありますが、60秒程度を目安としてください。
※通信環境や、利用しているPaaSの状況によりタイムアウトが生じることがあります。その場合は時間をおいて再度お試しください。

解析対象となるコンテンツ領域

本ツールはページ全体のHTMLではなく、「記事本文」のデータを評価するため、以下のフィルタリングを行ってから数値をカウントしています。
「ページ全体」の評価とは異なりますのでご認識ください。また、フィルタリングにかからない情報についても誤差が生じますので、ご了承ください。

  • 優先抽出: main または article タグで囲まれた領域を本文として認識します。
  • 除外要素: headerfooternavaside などの共通パーツやナビゲーションタグは解析対象から除外されます。
  • サイドバーの除外: クラス名やID名に「sidebar」や「widget」が含まれるブロックも除外対象とし、メインコンテンツ領域を計測します。

評価指標とステータス判定の基準

グラフ上の「水色の帯」は最適値の範囲です。各指標の性質に応じ、以下のロジックで最適値とステータス(良好 / 改善が必要 / 要調査)を表示します。

① 下限を重視する項目

  • 対象: 本文の文字数 / 本文のユニーク単語数 / 本文の見出し(hタグ)数 / 本文の画像数
  • 判定基準: 競合サイトの平均値の「80%以上」を満たす項目を「良好」と判定します。コンテンツの網羅性や情報量を評価するため、平均値を上回る(上限を超える)分にはマイナス評価としていません。

② 固定の適正範囲を持つ項目

  • 対象: タイトルの文字数
  • 判定基準: 競合サイトの傾向に関わらず、検索結果画面(SERPs)での視認性における一般的な適正値として、「28文字〜35文字」の範囲に収まっている場合を「良好」、それ以外を「改善が必要」と判定します。

③ 上限・下限の適正割合を設ける項目

  • 対象: Dofollow発リンク数
  • 判定基準: 外部ドメインへ向けられた発リンクのうち、Dofollow属性のものを計測します。競合平均の「50%〜150%」の範囲内を「良好」、逸脱している場合は「改善が必要」と判定します。

④ 状況に応じて「要調査」とする項目

  • 対象: Nofollow発リンク数 / キーワード出現数
  • 判定基準: 競合平均の「50%〜150%」を基準値とします。ただし、これらの項目はサイトの性質やキーワードの特性によって適切な扱いが異なるため、基準値を外れた場合でも直ちにエラーとはせず「要調査」のステータスを出力します。
    • Nofollow発リンク数: 広告やUGC(ユーザー生成コンテンツ)の量により適正値が変わるため、実態の目視確認を推奨します。
    • キーワード出現数: キーワードの過度な詰め込み(スパム判定リスク)を避けるためのアラートとして機能します。
この記事を書いた人
あてさん

新卒でイベント会社に就職。その後レストラン、不動産会社と転々として今はweb関連会社に在籍してます。二輪とダーツとお酒が好きな中年。週末は飼い犬のチワワとサイクリングに出かけます。

あてさんをフォローする
タイトルとURLをコピーしました