【サンプルあり】スプレッドシートでGoogle検索のサジェストをリスト化しよう。

Webライティングやブログでコンテンツを作る際、SEOやユーザーの需要などの観点から検索サジェストを活用してキーワード選定される方も多いかと思われます。

また、検索サジェストを表示させるようなツールも多いけれど、有料だったり、そもそも社内でツールの許可が許されていないなどの制約があります。

そこで、無料で誰でも実装できるようにスプレッドシートを活用したサジェスト一覧作成方法を紹介します。

サンプルもありますので、参考にしてみてください!

目次

まずは完成品を。

今回実装するのは以下のような例です。

要件としては、

  • B1セルにキーワードを入力するとB3:B12に検索サジェストを表示
  • C1:J1はB3:B12のキーワードをそのまま表示
  • C3:j12にはC1:J1のキーワードサジェストを表示

以下のリンクからご自身のスプレッドシートにセルをコピーして貼り付けて使ってみてください。

https://docs.google.com/spreadsheets/d/1W3eVgHlp4zJOZRldUsfANK9CyKzzp3HfP5RQi1s8gvA/edit#gid=0

スプレッドシートでIMPORTXML関数を使うだけ。

IMPORTXMLとはGoogleスプレッドシートで使える関数のことです。

基本的にWebサイトからデータを抽出する「Webスクレイピング」を行うために使用されます。

つまり、スクレイピングの技術をうまく活用することで検索サジェストを抽出することができるということなのです。

◆ Googleドキュメントエディタ ヘルプページ

https://support.google.com/docs/answer/3093342?hl=ja&sjid=16586643863932911229-AP

IMPORTXMLを使ってみる

基本的にIMPORTXMLには基本的に2つの引数が必要です。(最高3つ)

=IMPORTXML( URL , XPath )

IMPORTXML関数を使用すると指定のURLのXPathにあたるデータが抽出され、縦に並びます。

実際に「Webサイト」のキーワードサジェストを取得したい場合は以下のような関数の使い方になります。

=IMPORTXML("https://www.google.com/complete/search?hl=en&output=toolbar&q=Webサイト", "//suggestion/@data")

キーワードが入力されるセルを指定することもできます。

B1セルのキーワード文字列を取得する場合、以下のようにURLとセル「B1」を「&」で連結することでURLを完成させます。

=IMPORTXML("https://www.google.com/complete/search?hl=en&output=toolbar&q="&B1, "//suggestion/@data")

これでB1に入力されたキーワードを一覧にすることができます。

B1にキーワード、B3にIMPORTXML関数を使用した場合、画像のような形になります。

これで完成です。

【応用】抽出したデータからさらに抽出したい場合

抽出した検索サジェストからまたさらに検索サジェストを抽出したい場合、先述したIMPORTXML関数を使用しながら、抽出されたセルを指定すれば機能を拡張することができます。

とりあえずB4に表示された文字をC1に表示させます。

文字列をそのまま表示させる場合はC1セル内に「=B4」を記述。

(そのまま横にコピーしていきたいので今回は「=$B4」を記述してます。「$」の詳しい利用方法は色々と調べてみてください。)

そして、C3に例のIMPORTXML関数を利用します。

今回はC1を指定するので文字列の連結部に「C1」を記述。

=IMPORTXML("https://www.google.com/complete/search?hl=en&output=toolbar&q="C1,"//suggestion/@data")

うまくできましたでしょうか?

他のセルも同じようにコピーして、セルを指定するとうまくできるかと思います!

まとめ

今回はスプレッドシートのIMPORTXML関数を活用してGoogle検索のサジェスト一覧ツールの作成を行いました。

思った以上に簡単にできますよね。

サンプルもありますので、以下のリンクからご自身のスプレッドシートにセルをコピーして貼り付けて使ってみてください。

https://docs.google.com/spreadsheets/d/1W3eVgHlp4zJOZRldUsfANK9CyKzzp3HfP5RQi1s8gvA/edit#gid=0