Importer les données de Google Analytics API avec Python Anaconda

Pages Vues en Moyenne Mobile depuis 2011

Dans un article précédent, nous avions vu comment importer des données de Google Analytics avec R. Cette fois-ci nous allons voir comment effectuer une opération équivalente avec Anaconda et Python et l’API de Google Analytics V4. Suivez les étapes qui vous concernent ci-dessous.

Installation de Python Anaconda

Logo Anaconda

Anaconda se présente comme une plateforme dédiée aux sciences de données. Dans les faits, Anaconda est construit à partir de Python et inclut de nombreuses bibliothèques spécialisées en data science, comme par exemple scikit-learn, Numpy, Pandas, TensorFlow … Anaconda est compatible Windows, Mac et Linux. Rendez vous sur la page de téléchargement d’Anaconda Distribution pour télécharger la version qui vous concerne. Pour notre part, nous sommes sous Windows.

Anaconda Distribution Open Source

A l’heure ou je vous écris, la dernière version en Python 3 d’Anaconda est la 3.7. Remarque : tous nos tests sont en Python 3.xx.

Lors de l’installation nous vous conseillons de prendre les options par défaut du Logiciel notamment le répertoire pour Anaconda : C:\Users\MonNom\Anaconda3.

Choix du répertoire pour Anaconda3

Une fois l’installation terminée, vous verrez apparaitre différentes applications avec Anaconda dans le menu Windows :

Applications Anaconda

Vous trouverez notamment :

  • Anaconda Navigator qui permet d’accéder à de nombreux autres outils.
  • L’invite de commande Anaconda Prompt qui permet notamment d’utiliser le gestionnaire de paquets « Conda » afin d’ajouter des bibliothèques à votre environnement Python.
  • Spyder : l’environnement de développement intégré fourni par défaut.

Création d’un projet sur la Console Google et codes OAuth.

Afin de pouvoir accéder à l’API de Google Analytics il est nécessaire de créer un projet sur la console développeur de Google : https://console.developers.google.com.

Nous avions déjà décrit la procédure pour créer ce compte et récupérer ses codes sur la page https://www.anakeyn.com/2018/03/01/googleanalyticsr-import-google-analytics-r/ à la rubrique « Projet sur Console Google et codes OAuth ».

Récupérez et sauvegardez votre code client et votre code secret du genre :

  • Code Client   « XXXXXXXXXX-qb0pgbntdmvf32i1kni67u2o455t0rbh.apps.googleusercontent.com »
  • Code Secret :    « Mi_JcEQRuBgOLHDj8MH_s0uw »

Utilisez vos codes, pas les miens, de toute façon ceux-ci sont faux.

Installer la bibliothèque google-api-python-client fournie par Google.

Attention ici, utilisez le gestionnaire de paquet « conda » d’Anaconda plutôt que le gestionnaire de paquets « pip ».

Ouvrez l’invite de commande Anaconda (Anaconda Prompt) et saisissez :

Installer la bibliothèque de gestion de l’authentification  oauth2client

Comme précédemment, utilisez conda, ouvrez l’invite de commande Anaconda (Anaconda Prompt) et saisissez :

Code Source

N’hésitez pas à copier/coller les codes sources suivants. Comme nous vous l’indiquions précédemment nous faisons tourner le programme dans l’environnement de développement Spyder.

Chargement des bibliothèques utiles

Dans cette partie nous chargeons les bibliothèques générales dont nous avons besoin. On s’assure aussi que l’on est dans le bon répertoire. Ceci peut aussi se faire en vérifiant le répertoire courant dans Spyder en haut à droite).

Spyder Répertoire Courant

Connexion aux APIs de Google Via OAuth2

La première fois que vous vous connectez, un navigateur s’ouvre pour autoriser l’accès à l’application que vous aviez créée précédemment dans la console Google API : Connectez vous avec votre compte Google avec lequel vous avez accès à vos données Google Analytics. Pour les fois suivantes un petits fichier est créé dans le répertoire courant et qui comporte vos codes d’autorisations de connexions à l’appli. Remarque : ce code source s’inspire de celui proposé par Google : https://developers.google.com/analytics/devguides/reporting/core/v4/quickstart/installed-py

Récupération de l’ID de vue de Google Analytics

On récupère l’id de vue en faisant appel à Google Analytics V3 (je n’ai pas trouver de méthode avec la version 4). Sinon aller la récupérer « à la main » dans Google Analytics.

Transformation de la réponse de l’API Google Analytics en DataFrame.

Comme on aime bien avoir nos jeux de données sous la forme de DataFrame comme dans R, on va transformer la réponse de Google Analytics API. pour cela on récupère une fonction de nos confrères de « The Marketing Technologist » : https://www.themarketingtechnologist.co/getting-started-with-the-google-analytics-reporting-api-in-python/

Récupération des données :

On va ici récupérer les données de Google Analytics pour le site d’une association, Networking Morbihan dont nous avons déjà parlé dans un article sur le nettoyage du spam via les segments de Google Analytics. L’avantage de ce jeu de données est que nous avons 7 ans 1/2 d’historique, ce qui pourra nous servir pour d’autres articles. Si vous souhaitez personnaliser votre requête et savoir quelles métriques et quelles dimensions vous pouvez utiliser, reportez vous au Guide de Google Analytics V4 : https://developers.google.com/analytics/devguides/reporting/core/dimsmets

Graphique du trafic sur plusieurs années :

Pour que cela soit plus visible on va utiliser différentes couleurs selon les années :

Pages Vues depuis 2011

Pages Vues en Moyenne mobile sur 30 jours

Pour clarifier le graphique, essayons d’afficher celui-ci en moyenne mobile sur 30 jours.

Pages Vues en Moyenne Mobile depuis 2011

J’espère que cette première présentation sur l’API de Google Analytics avec Python vous aura été utile.

N’hésitez pas à faire vos remarques et suggestions et poser vos questions en commentaires.

Dans plusieurs prochains articles nous tirerons au clair cette affaire d’anomalie en 2016 🙂

A Bientôt,

Pierre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.