Webサイトの重複ページは、検索結果に表示されないなどSEOにおいて様々な不利益を及ぼす可能性があります。
数ページのサイトであれば人目で全てチェックできますが、大きなサイトになってくると大変です。
今回はGoogleスプレッドシートを使って簡単に、Webサイト全体のタイトルや見出しの重複をチェック出来るようにする方法をご紹介します。
Webサイト全ページのURLを取得する
重複のチェックを行うためには、各ページのURLを手に入れる必要があります。
WebサイトのURLを取得する方法はたくさんあるのですが、今回はScreamingfrogを使って全ページのURLを取得します。
このScreamingfrogというツールは、URLが取得できるだけではなく、メタ情報や見出しタグなどもある程度取得できたり他にも便利な機能がたくさんあるツールです。
とても便利なツールなのですが、見出しタグはH1とH2がそれぞれ2つまでしか取れないため、全体を把握するためには少し物足りなく感じるときもあります。
そのため、今回はGoogleスプレッドシートで物足りないタグを補完します。
スプレッドシートで見出しタグの重複チェック
スプレッドシートで作業するために、ScreamingfrogからExcelを出力してスプレッドシートに取り込みます。

Excelをスプレッドシートに取り込んだら、スプレッドシートのX~AA列に新規列を挿入して下記の関数を入力します。
・X3セル
3つ目のH2タグ内容
=IFERROR(CONCATENATE(INDEX(IMPORTXML(A3,”//h2″),3)), “”)
・Y3セル
3つ目のH2タグ長さ
=LEN(X3)
・Z3セル
4つ目のH2タグ内容
=IFERROR(CONCATENATE(INDEX(IMPORTXML(A3,”//h2″),4)), “”)
・AA3セル
4つ目のH2タグ長さ
=LEN(Z3)
これでScreamingfrogだけでは2つまでしか取得できなかったH2タグが4つまで取得できました。
使用している関数
IMPORTXML
様々な種類の外部データをスプレッドシートにインポートする関数です。
構文:
IMPORTXML(URL, XPathクエリ)
- URL – 検証するページのURL。プロトコル(http://など)も含めます
- Xpathクエリ – 構造化データで実行するXPathクエリです
関数の説明:

IMPORTXML関数を使用するとXpathクエリをもとにした配列が返されます。
スプレッドシートでは、IMPORTXMLのような配列関数は自動的に配列が展開されることが多いです。
上記の場合だと、C2セルに関数を入力しているのですが、配列がE4セルまで展開されています。
内容は、C2セルの1つ目のH2タグから順に、C4セルが3つ目のH2タグとなっています。
3つ目のH2タグのみ3列に分割されていますが、こちらはタグの内容に改行コードが入っているとこうなります。
INDEX
行と列のオフセットで指定したセルのコンテンツを返す関数です。
構文:
INDEX(参照, 行, 列)
- 参照 – オフセットされるセルの配列
- 行 – オフセット行数
- 列 – オフセット列数
関数の説明:

INDEX関数で何番目のタグを取得したいのか指定します。
上記のように行だけを指定しすることで、例えば3番目の内容を全部取得するといったことも出来ます。
CONCATENATE
文字列を別の文字列に結合します。
構文:
CONCATENATE(文字列1, [文字列2, …])
- 文字列1 – 最初の文字列
- 文字列2 … – [省略可]順番に連結するその他の文字列
関数の説明:

タグのないように改行タグが入っている場合などは、IMPORTXML関数で返ってくる内容が分かれてしまうので、この関数で1つにまとめます。
この関数とINDEX関数はExcelでもおなじみの関数ですね。
まとめ
今回はh2タグを4つまでの取得を行いましたがGoogleスプレッドシートのIMPORTXML関数を使うことで、H1タグやそれ以外のタグも取得することが出来ます。
重複チェックを行いたいサイトの状況に応じてカスタマイズすることで、簡単に柔軟に重複チェックが出来ます。
