Google TrendのキーワードをNode.jsで取得する
npmをぶらぶらしていたらgoogle-trends-apiという面白そうなライブラリがありました。 どうやらGoogle Trendのデータを取得できるクライアントライブラリらしいので、触って見ます。 インストール n […]
広告ここから
広告ここまで
目次
npmをぶらぶらしていたらgoogle-trends-apiという面白そうなライブラリがありました。
どうやらGoogle Trendのデータを取得できるクライアントライブラリらしいので、触って見ます。
インストール
npmでインストールするだけです。
$ npm i -S google-trends-api
TypeScriptの型定義はありませんので、TSで使う場合もrequire
で読み込んでやりましょう。
指定した日のトレンドキーワードを取得する
サンプルコードを元にざっと簡単なものを実装してみました。
const googleTrends = require('google-trends-api')
googleTrends.dailyTrends({
// 調べたい日を指定
trendDate: new Date('2019-09-20'),
// 対象の地域を指定
geo: 'JP',
}, function(err, results) {
// エラーハンドル
if (err) {
console.log(err);
return
}
// JSON.parseがあるので、念のためtry - catchしておく
try {
// レスポンスをオブジェクトに
const data = JSON.parse(results)
// 日別・ランク別でネストした連想配列がきているので、ループで回す
data.default.trendingSearchesDays.forEach(day => {
day.trendingSearches.forEach((trend, i) => {
console.log(`Rank ${i + 1}: ${trend.title.query}`)
console.log(' Trafic: ' + trend.formattedTraffic)
console.log(' Related Queries:')
trend.relatedQueries.forEach(relatedItem => {
console.log(` ${relatedItem.query}`)
})
console.log('\n')
})
})
} catch (e) {
console.log(e)
return []
}
});
実行すると、このような結果が出ます。
Rank 1: 2019 年ラグビー ワールドカップ
Trafic: 2M+
Related Queries:
Rank 2: ラグビー
Trafic: 1M+
Related Queries:
ラグビーワールドカップ
ラグビー ルール
ラグビー ワールドカップ
ラグビールール
ワールドカップラグビー
Rank 3: ラグビーワールドカップ
Trafic: 200K+
Related Queries:
ラグビー ワールドカップ
Rank 4: ラグビー日本代表
Trafic: 200K+
Related Queries:
ラグビー ランキング
ラグビー日本代表メンバー2019
ラグビーランキング
Rank 5: 松島幸太朗
Trafic: 100K+
Related Queries:
Rank 6: オールブラックス
Trafic: 100K+
Related Queries:
Rank 7: 凪のおいとま最終回
Trafic: 50K+
Related Queries:
Rank 8: 松島幸太郎
Trafic: 50K+
Related Queries:
Rank 9: 倉科カナ
Trafic: 50K+
Related Queries:
Rank 10: はあちゅう
Trafic: 50K+
Related Queries:
Rank 11: ラグビー 日本代表
Trafic: 50K+
Related Queries:
ラグビー日本代表メンバー
Rank 12: トイレの神様
Trafic: 50K+
Related Queries:
Rank 13: ワールドカップ
Trafic: 20K+
Related Queries:
Rank 14: リーチマイケル
Trafic: 20K+
Related Queries:
Rank 15: ゼルダの伝説夢をみる島攻略
Trafic: 20K+
Related Queries:
夢を見る島
Rank 16: ラグビーワールドカップ 日程
Trafic: 20K+
Related Queries:
ラグビー 試合
Rank 17: ネルソンマンデラ
Trafic: 20K+
Related Queries:
Rank 18: 日本対ロシア
Trafic: 20K+
Related Queries:
Rank 19: 田村優
Trafic: 20K+
Related Queries:
Rank 20: HELLO WORLD
Trafic: 20K+
Related Queries:
1 ~ 20位のキーワードと検索トラフィック、関連キーワードを見ることができました。