かずきち。の日記

サーバサイドエンジニアのつぶやき

マーケティング価値大!GoogleAppsScript7行で関連キーワード調査ツールを作成してみる!

関連キーワード調査ツールを作る

サジェストワードというのはGoogle検索利用者が検索語として一緒に利用する「共起語」である。
「男性脱毛」という言葉で「vio」「医療」「おすすめ」…と一緒に検索されていることがわかる。
その操作を人間が人力で検索することはできるが、一括で表データとして取得することを今回は目標とする。

「調査フォーム」

このフォームに回答をすると瞬時にインターネットから関連するキーワードを返却する。

「調査結果」

どうやって作るのか?

難しいことをやっていそうだが、実は書いたスクリプトはたったの7行である。

function myFunction() {
  const sheet = SpreadsheetApp.getActiveSheet(); 
  const lastRow = sheet.getLastRow();
  sheet.getRange(lastRow,3).setValue("=COUNTA(D"+lastRow+":M"+lastRow+")");
  sheet.getRange(lastRow,4).setValue("\"");
  sheet.getRange(lastRow,4).setValue("=IF(B2<>\"\",TRANSPOSE(IMPORTXML(\"http://www.google.com/complete/search?hl=en&output=toolbar&q=\"&B"+lastRow+",\"//suggestion/@data\")),\"\")");
}

あとはこのコードを調査依頼フォーム送信時に自動起動させる。

調査キーワードが送信されると同時にGoogle上で検索されている関連語を返すという仕組みである。
プログラミングや数学の面白いところは努力に比例しないところである。

サジェストデータがxmlで取得できるということがわかったら、あとはXMLを解析すればいいだけなので至って簡単である。