API Hello Analytics Reporting v4 : guide de démarrage rapide pour les comptes de service Python

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Ce tutoriel vous explique comment accéder à l'API Reporting v4.

1. Activer l'API

Pour commencer à utiliser l'API Reporting v4, vous devez d'abord utiliser l'outil de configuration. Celui-ci vous explique comment créer un projet dans la console Google APIs, activer l'API et créer des identifiants.

Créer des identifiants

  1. Ouvrez la page Comptes de service. Si vous y êtes invité, sélectionnez un projet.
  2. Cliquez sur Créer un compte de service, puis saisissez un nom et une description pour ce compte. Vous pouvez utiliser l'ID de compte de service par défaut ou en choisir un autre, unique. Une fois que vous avez terminé, cliquez sur Créer.
  3. La section Autorisations associées au compte de service (facultatif) qui suit n'est pas requise. Cliquez sur Continuer.
  4. Sur l'écran Autoriser les utilisateurs à accéder à ce compte de service, accédez à la section Créer une clé. Cliquez sur Créer une clé.
  5. Dans le panneau latéral qui s'affiche, sélectionnez le format de la clé. JSON est recommandé.
  6. Cliquez sur Créer. La nouvelle paire de clés publique et privée est générée et téléchargée sur votre ordinateur. Il s'agit de la seule copie dont vous disposez. Découvrez comment stocker cette clé en toute sécurité.
  7. Cliquez sur Fermer dans la boîte de dialogue Clé privée enregistrée sur votre ordinateur, puis cliquez sur OK pour afficher le tableau des comptes de service.

Ajouter un compte de service au compte Google Analytics

Le compte de service que vous venez de créer aura une adresse e-mail semblable à celle-ci:

quickstart@PROJECT-ID.iam.gserviceaccount.com

Utilisez cette adresse e-mail pour ajouter un utilisateur à la vue Google Analytics à laquelle vous souhaitez accéder via l'API. Pour ce tutoriel, seules les autorisations Read & Analyze (Lire et analyser).

2. Installer la bibliothèque cliente

L'utilisation de pip conjointement avec venv est la méthode recommandée pour installer des packages Python : sudo -s apt-get install python3-venv python3 -m venv analytics-quickstart source analytics-quickstart/bin/activate pip install --upgrade google-api-python-client pip install --upgrade oauth2client

3. Configurer l'exemple

Vous devrez créer un seul fichier nommé HelloAnalytics.py, qui contiendra l'exemple de code fourni.

  1. Copiez ou téléchargez le code source suivant dans HelloAnalytics.py.
  2. Déplacez client_secrets.json précédemment téléchargé dans le même répertoire que l'exemple de code.
  3. Remplacez la valeur de KEY_FILE_LOCATION par le chemin d'accès approprié à client_secrets.json téléchargé.
  4. Remplacez la valeur de VIEW_ID. Vous pouvez rechercher un ID de vue à l'aide de l'explorateur de comptes.
"""Hello Analytics Reporting API V4."""

from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials


SCOPES = ['https://www.googleapis.com/auth/analytics.readonly']
KEY_FILE_LOCATION = '<REPLACE_WITH_JSON_FILE>'
VIEW_ID = '<REPLACE_WITH_VIEW_ID>'


def initialize_analyticsreporting():
  """Initializes an Analytics Reporting API V4 service object.

  Returns:
    An authorized Analytics Reporting API V4 service object.
  """
  credentials = ServiceAccountCredentials.from_json_keyfile_name(
      KEY_FILE_LOCATION, SCOPES)

  # Build the service object.
  analytics = build('analyticsreporting', 'v4', credentials=credentials)

  return analytics


def get_report(analytics):
  """Queries the Analytics Reporting API V4.

  Args:
    analytics: An authorized Analytics Reporting API V4 service object.
  Returns:
    The Analytics Reporting API V4 response.
  """
  return analytics.reports().batchGet(
      body={
        'reportRequests': [
        {
          'viewId': VIEW_ID,
          'dateRanges': [{'startDate': '7daysAgo', 'endDate': 'today'}],
          'metrics': [{'expression': 'ga:sessions'}],
          'dimensions': [{'name': 'ga:country'}]
        }]
      }
  ).execute()


def print_response(response):
  """Parses and prints the Analytics Reporting API V4 response.

  Args:
    response: An Analytics Reporting API V4 response.
  """
  for report in response.get('reports', []):
    columnHeader = report.get('columnHeader', {})
    dimensionHeaders = columnHeader.get('dimensions', [])
    metricHeaders = columnHeader.get('metricHeader', {}).get('metricHeaderEntries', [])

    for row in report.get('data', {}).get('rows', []):
      dimensions = row.get('dimensions', [])
      dateRangeValues = row.get('metrics', [])

      for header, dimension in zip(dimensionHeaders, dimensions):
        print(header + ': ', dimension)

      for i, values in enumerate(dateRangeValues):
        print('Date range:', str(i))
        for metricHeader, value in zip(metricHeaders, values.get('values')):
          print(metricHeader.get('name') + ':', value)


def main():
  analytics = initialize_analyticsreporting()
  response = get_report(analytics)
  print_response(response)

if __name__ == '__main__':
  main()

4. Exécuter l'exemple

Exécutez l'exemple en utilisant:

python HelloAnalytics.py

Une fois ces étapes terminées, l'échantillon génère le nombre de sessions des sept derniers jours pour la vue donnée.

Dépannage

Erreur d'attribut: &module_six_moves_urllib_parse' l'objet ne comporte aucun attribut 'urlparse'

Cette erreur peut se produire dans Mac OSX, où l'installation par défaut du module "six" (dépendance de cette bibliothèque) est chargée avant celle de pip. Pour résoudre le problème, ajoutez l'emplacement d'installation de pip à la variable d'environnement système PYTHONPATH:

  • Déterminez l'emplacement d'installation de pip à l'aide de la commande suivante:

    pip show six | grep "Location:" | couper -d " " -f2

  • Ajoutez la ligne suivante à votre fichier ~/.bashrc, en remplaçant &lt;pip_install_path&gt; par la valeur déterminée ci-dessus:

    export PYTHONPATH=$PYTHONPATH:<pip_install_path>

  • Actualisez votre fichier ~/.bashrc dans n'importe quelle fenêtre de terminal ouverte à l'aide de la commande suivante:

    source ~/.bashrc