Googleトレンドの情報を取得する方法

マーケティングなどで活用されるGoogleトレンドの情報をPHPで取得する方法について調べてみました。時系列ごとのデータ、関連キーワードなどの情報を取得してみます。

利用ライブラリ

各言語ごとにGoogleトレンドを取得するライブラリがいくつか存在します。

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
ニュース検索: news
Googleショッピング: froogle
YouTube検索: youtube
604-php-google-trend_explore_1.png

「画面上で設定する内容」と「exploreメソッドの引数」の対応関係です。

取得結果

取得結果と画面との対応関係は以下のようになります。

604-php-google-trend_explore_2.png
604-php-google-trend_explore_timeseries.png

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

604-php-google-trend_explore_geo_map.png

GEO_MAPで、どの地域で検索されているか確認できます。

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

604-php-google-trend_explore_topics.png

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

604-php-google-trend_explore_queries.png

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

他に利用できるメソッド

他にも Google\GTrendsクラス では以下のメソッドを利用してGoogleトレンドの情報を取得することができるようです。

getDailySearchTrends
getRealTimeSearchTrends
getRelatedSearchQueries
explore
interestOverTime
getRelatedTopics
interestBySubregion
interestByCity
interestByMetro
suggestionsAutocomplete
getCategories