プログラミング

Pythonを使ってMeasurement ProtocolでGoogle Analyticsにデータを送る

MesumentProtocol

こんにちは、ちゃりおです。

最近、Measurement Protocolでデータ送信を行ったので
忘れないうちに、やり方をまとめておきます。

ちゃりお
ちゃりお
Google Analyticsにデータを送る方法についてです。

Contents

Measurement Protocolとは

Googleアナリティクスにデータを送るツールです。

Google アナリティクスの Measurement Protocol を使用すると、HTTP リクエストでユーザーの利用状況に関する生データを Google アナリティクス サーバーに直接送信できます。これにより、ほとんどすべての環境で、ユーザーがビジネスをどのように利用しているかを測定できます。また、Measurement Protocol を使用すると次のことも可能です。

新しい環境でユーザー アクティビティを測定する。
オンラインとオフラインでの行動を結び付ける。
クライアントとサーバーの両方からデータを送信する。

Measurement Protocol の概要

使い方

公式ドキュメント

デベロッパーガイド

パラメータリファレンス

Hit Builder

パラメータが送信可能かを試すために、Hit Builderを使用することができます。

Hit_Builder_—_Google_Analytics_Demos___Tools-min

パラメータリファレンスを見ながらこのツールで、Google Analyticsにデータを送信可能確認する感じです。

サンプルコード

pythonでやるならこんな感じで、GAにデータ送信できます。
各種値は、置き換えてください。

import requests
url = “https://www.google-analytics.com/collect“
dpayload = { ‘v’: ‘1’, ‘tid’: 'UA-XXXX-Y', ‘t’: ‘transaction’, 
            ‘cid’: '1111.11111', ‘ti’: '999999', ‘tr’: "10000", ‘ni’: ‘1’}
response = requests.post(url,params=payload, timeout=3)

ハマったところ

存在しないCIDだった

CIDは一意なものらしく、適当なCIDで送信しても送信は可能ですがGA上から確認できません。

Google Analytics側でアクセスがブロックされていた

Google Analyticsの知識不足だったのですが、どうやらGoogle Analyticsにもアクセス制御の機能があるみたいです。
Google Analyticsでデータ確認できないなーと思っていたら、送信元が許可されていませんでした。

まとめ

Measurement Protocolというよりは、Google Analyticsの使い方がわからずハマったりしました。
ドキュメントも日本語でしっかりしていますのでデータを送ること、とても簡単にできます。

python編集後
【Python3チュートリアル】「1. やる気を高めよう」やってみたPython入門のために、公式サイトのPythonチュートリアルをやってみます。 最新版の、3.6.5(2018/04/22時点)でやり...
python編集後
【Python3チュートリアル】「2. Python インタプリタを使う」やってみた前回に続きpythonチュートリアルやります。 ここまでは、python初心者の僕でも余裕ですね。 2. Python インタプリタを...
python編集後
【Python3チュートリアル】「3. 形式ばらない Python の紹介」やってみた前回に続き、pythonチュートリアルをやります。 計算と文字列型、リスト型を扱います。 今回もCloud9を使います。(環境については...