マーケティングなどで活用されるGoogleトレンドの情報をPHPで取得する方法について調べてみました。時系列ごとのデータ、関連キーワードなどの情報を取得してみます。
目次
利用ライブラリ
各言語ごとにGoogleトレンドを取得するライブラリがいくつか存在します。
- node.jsの場合
- pythonの場合
PHPでもいくつかあったのですが、上記2つのライブラリよりメジャーではないようです。
ここでは、下記ライブラリを利用してみます。
https://github.com/x-fran/g-trends
インストール
g-trends をインストールします。
$ composer require x-fran/g-trendsインストールできました。
$ composer show -i | grep g-trends
x-fran/g-trends 2.0.0 Google Trends API for PHP利用方法
コード
いくつか利用できるメソッドがあるのですが、ここでは exploreメソッド を利用してみます。利用例を示します。
$options = [
'hl' => 'ja-JP',
'tz' => -540,
'geo' => 'JP',
];
$gt = new \Google\GTrends($options);
$keyWordList = ['java'];
$category = 0;
$time = 'today 12-m';
$property = '';
$result = $gt->explore($keyWordList, $category, $time, $property);クラス生成時に渡すオプション
クラス生成時に渡すオプションの概要は以下の通りです。
| option | 概要 |
|---|---|
| hl | 言語を指定します。英語(米国)の場合 en-US を指定します。 |
| tz | Timezone Offset を指定します。日本は UTC +0900 なので -540 (9時間 × 60分) となります。 |
| geo | 検索する地域を指定します。 |
exploreメソッドの引数
exploreメソッドの引数の概要は以下の通りです。
| 引数 | 必須/任意 | 概要・指定例 |
|---|---|---|
| $keyWordList | 必須 | 検索キーワード。最大5つまで。 |
| $category | 任意 | カテゴリIDは下記ページで確認できます。 https://github.com/pat310/google-trends-api/wiki/Google-Trends-Categories |
| $time | 任意 | 過去12ヶ月間 → today 12-m過去5年間 → today 5-y |
| $property | 任意 | ウェブ検索: 指定なし画像検索: imagesニュース検索: newsGoogleショッピング: froogleYouTube検索: youtube |

「画面上で設定する内容」と「exploreメソッドの引数」の対応関係です。
取得結果
取得結果と画面との対応関係は以下のようになります。


TIMESERIESで、いつごろ検索数が多かったのか確認することができます。valueは、もっとも多かったときを100としたときの割合です。

GEO_MAPで、どの地域で検索されているか確認できます。
日本を指定しているため、47都道府県での検索の割合を確認できます。

検索キーワードに関連する「注目トピック」と「人気トピック」を確認できます。

検索キーワードに関連する「注目キーワード」と「人気キーワード」を確認できます。
他に利用できるメソッド
他にも Google\GTrendsクラス では以下のメソッドを利用してGoogleトレンドの情報を取得することができるようです。
getDailySearchTrends
getRealTimeSearchTrends
getRelatedSearchQueries
explore
interestOverTime
getRelatedTopics
interestBySubregion
interestByCity
interestByMetro
suggestionsAutocomplete
getCategories