Appeler l'API Data Portability à l'aide d'un script Python

Dans ce guide de démarrage rapide, vous obtenez un jeton OAuth pour votre compte et vous envoyez des requêtes aux points de terminaison de l'API Data Portability à l'aide d'un script Python.

Objectifs

Dans ce guide de démarrage rapide, vous allez utiliser un script Python pour:

  • Envoyez une requête authentifiée au point de terminaison InitiatePortabilityArchive en fournissant un jeton OAuth valide. La réponse est un job_id valide.
  • Envoyez une requête authentifiée au point de terminaison GetPortabilityArchiveState et téléchargez les données. La réponse doit contenir un état de tâche valide et, une fois la tâche terminée, une URL signée.
  • Stockez le jeton OAuth avec un accès basé sur le temps pour pouvoir le réutiliser ultérieurement.
  • Envoyez une requête authentifiée au point de terminaison ResetAuthorization. Cette requête révoque toutes les habilitations OAuth accordées par l'utilisateur.
  • Envoyez une requête authentifiée au point de terminaison InitiatePortabilityArchive en fournissant un jeton OAuth valide avec start_time ou end_time pour appliquer un filtre temporel à votre requête.

Prérequis

Pour exécuter ce guide de démarrage rapide, vous devez:

  • Vérifiez que l'API Data Portability est disponible. Pour obtenir la liste des pays et régions compatibles, consultez la section Questions fréquentes sur la page "Partager une copie de vos données avec un tiers".
  • Suivez la procédure de configuration de l'API Data Portability et vérifiez que vous utilisez un nouveau projet.
  • Obtenir l'accès à un compte appartenant ou contrôlé par votre organisation Les données d'activité de recherche de ce compte sont exportées dans ce guide de démarrage rapide.

Avant de commencer ce guide de démarrage rapide, vous devez également configurer OAuth, Python et le package OAuth pour les bibliothèques clientes Python.

Configurer OAuth

  • Suivez la procédure pour configurer OAuth pour les applications installées. Ce flux est semblable au flux OAuth pour les applications de serveur Web. Lorsque vous configurez votre ID client OAuth :
    • Le Type d'application doit être Application de bureau.
    • Après avoir créé l'ID client, téléchargez le secret client au format JSON et nommez le fichier client_secrets.json.
    • Lorsque vous configurez des champs d'application pour l'API Data Portability, notez que ce guide de démarrage rapide utilise les groupes de ressources suivants :
      • myactivity.search : https://www.googleapis.com/auth/dataportability.myactivity.search
      • myactivity.youtube : https://www.googleapis.com/auth/dataportability.myactivity.youtube

Configurer Python

Vous devez configurer Python sur votre ordinateur local pour exécuter le script utilisé dans ce tutoriel de démarrage rapide. Pour configurer Python:

  • Installez l'outil de gestion de paquets Pip et Python 3.11 (ou version ultérieure).
  • Installez la bibliothèque cliente des API Google pour Python.
  • Installez le package google_auth_oauthlib pour la bibliothèque cliente Python en exécutant cette commande. Ce package fournit une intégration oauthlib avec google-auth, la bibliothèque d'authentification Google pour Python.

    pip install google-auth-oauthlib google-api-python-client --upgrade

Exécuter le script

Ce script utilise une redirection localhost dans le flux OAuth. Cette option nécessite que l'application écoute sur un port localhost, puis ouvre le navigateur système pour lancer le flux d'autorisation OAuth.

Cliquez sur ce lien pour ouvrir le script ou téléchargez-en une copie en effectuant un clic droit sur le lien.

Script de démarrage rapide de l'API Data Portability en Python

Pour exécuter le script et exporter l'ensemble du corpus de données, saisissez la commande suivante:

python3 data-portability-quickstart.py

Pour utiliser différents champs d'application, spécifiez-les à l'aide de --resources, par exemple:

python3 data-portability-quickstart.py --resources myactivity.shopping myactivity.play

Pour appliquer un filtrage temporel, utilisez le même script avec les options start_time et end_time. Exemple :

python3 data-portability-quickstart.py --start_time 2023-01-01T12:00:00Z --end_time 2024-01-01T12:00:00Z

Les actions effectuées par le script sont détaillées dans les commentaires.