Bonjour à tous. @best_not_best.
En utilisant le protocole de mesure Google Analytics, vous pouvez envoyer des données brutes directement au serveur Google Analytics dans une requête HTTP. Cela vous permet de connecter le comportement en ligne et hors ligne et de l'analyser sur Google Analytics.
https://developers.google.com/analytics/devguides/collection/protocol/
Google Analytics propose une fonctionnalité similaire appelée Importation de données (https://support.google.com/analytics/answer/3191589), mais les différences sont (en gros):
Measurement Protocol | Importation de données | |
---|---|---|
Comment envoyer des données | Requête HTTP | Principalement le téléchargement de fichiers |
Utilisateur à envoyer | Il est également possible d'envoyer des données d'utilisateurs (nouveaux utilisateurs) qui n'existent pas dans Google Analytics | Seuls les utilisateurs (utilisateurs existants) existant dans Google Analytics |
Temps de réflexion | Presque temps réel | Cela peut prendre jusqu'à 24 heures |
Documentation officielle avec des exemples d'utilisation en Python | Aucun | Oui (Management API) |
Obtenez un identifiant de membre sur Dimension personnalisée. Après la combinaison avec les données système, envoyez les données avec le protocole de mesure. Les données envoyées à Google Analytics peuvent également être utilisées pour la distribution de publicités.
Vous pouvez utiliser BigQuery Export de données Google Analytics, donc après avoir combiné avec des données système sur BigQuery, des données de Dataflow ou Cloud Composer avec un protocole de mesure Je pense qu'il vaut mieux envoyer.
Bien que l'introduction ait été allongée, voici un exemple d'utilisation du protocole de mesure.
$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
Python
mp.py
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
"""send Google Analytics data using MeasurementProtocol."""
import sys
import urllib.parse
import urllib.request
from urllib.request import urlopen
if __name__ == '__main__':
mp_url = 'https://www.google-analytics.com/collect'
tid = 'UA-XXXXX-X'
ua = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:71.0) Gecko/20100101 Firefox/71.0'
t = 'event'
ec = 'sample_event_category'
ea = 'sample_event_action'
el = 'sample_event_labe'
v = '1'
ni = 1
# url params
url_params = [
{
'v': v,
'tid': tid,
'ua': ua,
't': t,
'ec': ec,
'ea': ea,
'el': el,
'ni': '1',
'cid': '11111.11111',
},
{
'v': v,
'tid': tid,
'ua': ua,
't': t,
'ec': ec,
'ea': ea,
'el': el,
'ni': '1',
'cid': '22222.22222',
},
{
'v': v,
'tid': tid,
'ua': ua,
't': t,
'ec': ec,
'ea': ea,
'el': el,
'ni': '1',
'cid': '33333.33333',
},
]
try:
for url_param in url_params:
# url encode
data = urllib.parse.urlencode(url_param).encode('utf-8')
request = urllib.request.Request(mp_url, data)
response = urlopen(request)
except Exception as e:
print(e)
sys.exit(1)
sys.exit(0)
Pour tid
, spécifiez l'ID de suivi de la destination Google Analytics et pour ʻua, spécifiez un agent utilisateur approprié. ʻUrl_params
est un paramètre d'API. Veuillez définir chaque ID client Google Analytics dans cid
.
Voir ci-dessous pour les paramètres disponibles.
https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters
$ python mp.py
Si vous regardez les événements en temps réel dans Google Analytics, vous pouvez voir que les événements que vous définissez sont suivis.
Après avoir mis à jour pyenv sur mon Mac, openssl n'a pas fonctionné, je l'exécute donc dans un environnement cloud ... (C'est pourquoi la version Python est 3.5.) Je suis désolé de le réparer ...
Recommended Posts