Yahoo!広告のレポートをBigQueryに自動同期し、Data Studioで可視化する

## 概要
※この記事は、[Facebook広告のレポートをBigQueryに自動同期し、Data Studioで可視化する](https://qiita.com/hiro_koba_jp/items/299a6f97f5649b2d6daa)のYahoo!スポンサードサーチ版です。

広告管理画面のレポート統合や、スクレイピング・APIからのデータ取得に工数を割かれている方向けに、[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)で5~10分程度でデータ取得を自動化する方法をご紹介します。
今回取得したデータはBigQueryに貯め、Data Portal(旧Data Studio)で実際に分析環境を整えるまで（こちらもを5分程度）をゴールとします。
([trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)はYahoo!広告以外にも、Yahoo!スポンサードサーチ、Facebook広告、Twitter広告、LINE Ads Platformに対応)

その他にも広告やデータベースなど、様々な分析データをETL・転送した事例をまとめました。
[troccoの使い方まとめ（CRM・広告・データベース他）]
(https://qiita.com/hiro_koba_jp/items/2b2caa040804e402bda7)

![trocco概念図(広告可視化).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/a10357c8-b605-0f7e-2158-a8cea7f87fdb.png)

## ゴール
↓こんなのを15分くらいで作り上げます（当然、作ったあとは自動で最新値が更新されるようにします）
<img width="1791" alt="qiita_20191210_1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/5dcb8951-01c6-e983-c401-2c6004ec013d.png">

## こんな人におすすめ
* 広告出稿を、複数媒体で行っている方
* 様々な広告媒体レポートを、統合管理したい方
* 広告管理画面のスクレイピングや、データ取得作業に疲れている方・・・

## 1. troccoでYahoo!広告→BigQueryの転送自動化

### 1-0. 事前準備
[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)のアカウントおよびYahoo!スポンサードサーチの管理画面アカウントが必要です。
[フリープラン](https://trocco.io/lp/inquiry_free.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)もあるので、申し込みしておいてください！


### 1-1. 転送元・転送先を決定
[トップページ](https://trocco.io/)より、転送元にYahoo!広告を、転送先にBigQueryを選択し、転送設定作成ボタンを押します
<img width="1792" alt="qiita_20191212_1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/e78daaaf-7065-d13b-f4ac-aa5f4a9ab0bb.png">

すると、以下のような画面になるかと思いますが、これが設定画面です。
わからないことは右下のチャットで、直接聞いたりSlackのサポートから問い合わせることが出来ます。
<img width="1792" alt="qiita_20191212_2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/5b6b01d9-2ee0-7238-9143-a7a91e78adf8.png">

### 1-2. Yahoo!との連携設定
転送設定の名前とメモを適当に入力したら、「転送元の設定」内の「接続情報を追加」ボタンを押します。
<img width="1110" alt="qiita_20191212_4.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/7d0b5c8e-3575-5ed8-9e1c-37180d241616.png">

別タブで接続情報の新規作成画面が開きますので、Yahoo!広告管理画面のログインID/パスワードを入力します。
<img width="1792" alt="qiita_20191212_3.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/2fc0b68e-6531-a456-9bd3-91ee3ad8cc86.png">

再度転送設定画面に戻り、接続情報の「再読込」ボタンを押すと、作成した接続情報が選択できるかと思います。
<img width="1101" alt="qiita_20191212_5.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/4f179e8c-264c-6834-4019-63dd8c701de9.png">

### 1-3. Yahoo!広告からのデータ抽出設定
これでYahoo!との連携は完了です。次に、どのようなデータを取得するか設定していきましょう。
ここでは試しにキャンペーンの日次レポートを抽出してみます。フィールドも適当なものを。
取得期間というのは、転送時にどのデータを取得するかを設定しています。ここでは、1日前の日付を指定して、レポート取得を行うようにしましょう。
<img width="1106" alt="qiita_20191212_6.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/2499605b-3279-bc88-9898-208120967845.png">

### 1-4. 転送先BigQueryの設定
転送元と同じ要領で設定していきます。
データセットとテーブルはお好きな名前を入力してください。自動生成オプションを有効にすれば、データセット・テーブルが自動作成されます。
<img width="988" alt="qiita_20191212_7.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/be97bef7-0046-6246-e7f2-76f60600a80a.png">

これで入力は完了です。「保存して自動データ設定・プレビューへ」をクリックし、確認作業に進みましょう。

### 1-5. データのプレビュー
転送元のデータがプレビューされます。ここでは1日前のキャンペーンデータが表示されています。
問題ないので、このまま「スケジュール・通知設定」に進みます。
<img width="1792" alt="qiita_20191212_8.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/52da31fe-71d2-71cf-c9da-548e5e5e90ec.png">

### 1-6. スケジュール・通知設定
以下のように実行スケジュールを設定することで、転送を自動化することが出来ます。
<img width="1792" alt="qiita_20191212_9.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/ea7d4cce-8c8c-962d-0a95-1356f56ad826.png">

### 1-7. データ転送ジョブの実行
設定は以上です。最後に、手動で転送ジョブを実行し、BigQueryにデータを送ってみましょう。
実行はジョブ詳細画面の「実行」ボタンを押すだけです。
<img width="1792" alt="qiita_20191212_11.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/ee019d99-ed64-5603-abfe-e68e51be3bbb.png">

## 2. BigQueryの設定
特に設定することありません。データが溜まっているので、今すぐに分析・可視化を行うことが出来ます。
念の為データをプレビューして確認してみます。
<img width="1792" alt="qiita_20191212_13.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/97f3336d-894d-3835-bb7e-9e5648ff9ca0.png">

## 3. Data Portal（旧Data Studio）で可視化
BigQueryの画面から、「エクスポート > データポータル」を選択します。
<img width="240" alt="qiita_20191212_14.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/7d532107-ea6d-ee74-09b1-d2325ad37b3f.png">

すると、以下のようなData Portalの画面に遷移します。
試しに、キャンペーンごとのクリック数の日次推移を可視化してみましょう。
図の指示のとおりに変更してみてください。
<img width="1792" alt="qiita_20191212_15.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/14ae4c33-f7bb-25cd-e693-291c9d77cafb.png">

すると、以下のようなグラフが出来上がります。
<img width="1792" alt="qiita_20191212_16.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/ebd63830-f8e5-90e7-2a6e-13ca1055bf75.png">

この画面はデータポータルの「エクスプローラ」という機能になります。
<img width="267" alt="qiita_20191210_18.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/03a167e2-d307-20af-a378-56712023708e.png">

データポータルのトップ画面から、「レポート」を作成し、上述の通りグラフ作成を行うと、広告用ダッシュボードが出来上がります。
<img width="1791" alt="qiita_20191210_1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/61228/b225ec66-18b6-dc70-2361-bcf566745a54.png">

## まとめ
いかがでしたでしょうか。[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)を使うと管理画面を触ることなく、簡単に広告レポートを取得し、DWH(BigQuery)に貯めることが出来ました。
また、BigQueryにデータを貯めると、データポータルというGoogleの無料ダッシュボードですぐに可視化することが出来ます。
実際に弊社サービスの[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)においても、マーケティングKPI等をこのような流れで収集・分析しています。

試してみたい場合は、[フリープラン](https://trocco.io/lp/inquiry_free.html?utm_medium=social&utm_source=qiita&utm_campaign=yss_to_bigquery)がありますので、この機会にぜひ一度お試しください。

その他にも広告やデータベースなど、様々な分析データをETL・転送した事例をまとめました。
[troccoの使い方まとめ（CRM・広告・データベース他）]
(https://qiita.com/hiro_koba_jp/items/2b2caa040804e402bda7)