web-dev-qa-db-fra.com

Afficher les données Google Analytics sur mon site Web?

J'essaie de trouver un moyen d'afficher les données collectées à partir de Google Analytics sur mon site Web. J'utilise NopCommerce et je souhaite afficher ces informations/statistiques dans une vue de la section Admin.

Il y a peut-être plusieurs façons d'y parvenir et, après une recherche sur le Web, j'ai trouvé des exemples utilisant JavaScript, mais je n'ai pas pu trouver un bon tutoriel pour cela.

J'ai également étudié l'intégration de Google Analytics avec C # et j'ai trouvé cet exemple: http://biasecurities.com/2012/02/using-the-google-analytics-api-with-asp-net-mvc/# comment-1310 Un projet de démonstration peut être téléchargé à partir de GitHub ici: https://github.com/jgeurts/Analytics-Example

Cependant, le projet de démonstration ne semble pas fonctionner car l'URL de Google ( https://www.google.com/analytics/feeds/accounts/default ) n'est plus utilisée.

Comme j'utilise une application MVC, il serait préférable d'y parvenir en appliquant la logique de Google Analytics dans un contrôleur et en l'affichant dans une vue. Ou quelque chose comme ça.

Google fournit un outil de requête à expérimenter ici. Il ne devrait donc pas être trop difficile d'extraire des données de Google Analytics et d'afficher les données sur le site Web: https://ga-dev-tools.appspot.com/Explorer/

Quelqu'un a-t-il réussi à afficher les données Google Analytics sur son site Web?

24
koffe14

Si quelqu'un d'autre a le même problème, voici ce que j'ai fait et cela répond assez bien à la question.

1.

Voici le code de base pour un client API qui accède aux données de Google Analytics via votre compte de service Google. https://developers.google.com/api-client-library/dotnet/guide/aaa_oauth#service_account

Pour que cette application fonctionne, vous devez disposer de plusieurs éléments avant de commencer à coder.

* Compte Google Analytics - une fois enregistré, un code de suivi est généré pour que vous puissiez le placer sur chaque page Web que vous souhaitez suivre. Il se peut que vous ne voyiez pas de statistiques tout de suite et cela peut prendre jusqu'à 24 heures avant que des statistiques apparaissent dans le tableau de bord Google Analytics.

Une autorisation OAuth (clé API) avec CLIENT_ID, CLIENT SECRET et ADRESSE E-MAIL (il ne s'agit pas de votre courrier électronique normal, mais d'un courrier électronique de compte de service créé pour vous lorsque vous créez une autorisation OAuth) . Console.developers.google. com /

Une clé de serveur peut également être créée ici: console.developers.google.com/.Vous pouvez également créer une clé de navigateur, sans vous en préoccuper et ne pas savoir ce que cela fait.

Enfin, vous avez besoin d'une clé de certificat. Votre application ne pourra accéder à votre compte Google Analytics qu'en utilisant la clé et les informations d'identification. La clé est un fichier p.12 crypté. Vous pouvez trouver la clé dans https://code.google.com/apis/console/ .

Voici un guide pour la clé: http://www.pimcore.org/wiki/display/PIMCORE/Setup+Google+Analytics+Reporting+with+OAuth2+Service+Accounts+(since+1.4.6)

2.

Maintenant que vous avez toutes les clés et tous les identifiants dont vous avez besoin, il est temps de commencer à regarder le code que j'ai lié dans "1". Voici à nouveau les bases: https://developers.google.com/api-client-library/dotnet/guide/aaa_oauth#service_account

Créez une application console et implémentez le code ci-dessus.

Remarque: vous ne créez pas de "service Google Plus". Vous devez donc modifier ces éléments pour "AnalyticsService". Allez à gérer nuget et installer des paquets:

  • Google Apis Core Library
  • Google Apis Client Library
  • Google Apis Auth Client Library
  • Bibliothèque Google Apis Analytics.v3
  • Google GData Client (fournit les propriétés permettant d'interroger des données, des métriques, des rétentions, etc.)
  • Bibliothèque Google GData Extensions
  • Analytique

Peut-être oublié quelque chose, mais voici les espaces de noms que j'utilise:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Security.Cryptography.X509Certificates;
using Google.Apis.Auth.OAuth2;
using Google.Apis.Services;
using Google.Apis.Analytics.v3;

3

Enfin, voici certains de mes codes. Remarque Je crée un nouvel analytique comme étant supposé créer un "nouveau ServiceAccountCredentials", comme dans le code de Google. C'est la principale différence: Récupérer des données de l'API Google Analytics avec .NET, plusieurs métriques?

Grâce à cela, je peux accéder aux données d'un compte Google Analytics et les interroger. La meilleure partie est que vous n'avez pas à vous connecter à Google pour cela car la clé et les informations d'identification vous permettent d'accéder directement aux données du compte.

Je vais migrer ce code vers MVC maintenant. Il se peut que je fasse une mise à jour plus tard pour savoir comment implémenter ce client Analytics dans Mvc.

7
koffe14

Nous vous recommandons d'utiliser la nouvelle bibliothèque cliente Google APIs pour .NET (actuellement en version bêta). Vous trouverez des informations sur l'API Analytics ici. Notez que la bibliothèque client pour .NET (google-api-dotnet-client) remplace la bibliothèque .NET pour l'API Google Data (google-gdata).

Malheureusement, aucun exemple de code disponible chez Google (voir this numéro ), mais cette question sur SO devrait vous aider.

Si vous ne souhaitez pas vous connecter à chaque fois que vous accédez aux données Analytics, vous pouvez utiliser l'autorisation OAuth 2.0 avec accès hors connexion . Vous devez cependant accorder un accès initial à votre application Web. Cela nécessite que vous vous connectiez une fois, mais vous pourrez utiliser un jeton d'actualisation ultérieurement.

4
nwellnhof

J'ai passé quelques jours à naviguer sur Internet pour obtenir un exemple de code ASP.NET sans succès. J'ai utilisé la méthode d'authentification de Koffe14, ainsi que l'exemple _ { l'excellent outil d'analyse ASP.NET de Linda Lawton }. 

J'ai posté le code sur mon site web . Ce n'est pas MVC, mais cela pourrait aider d'autres personnes qui ont besoin d'obtenir des données de Google Analytics dans une page Web ASP.NET à l'aide de l'API Google v3.

1
Myke Black

Découvrez embeddedanalytics.com (disclaimer - Je travaille avec eux).

Il s’agit d’une solution simple, mais puissante, conçue pour les personnes qui ne souhaitent pas apprendre l’API GA et la relier ensuite à la visualisation (par exemple, des graphiques/graphiques).

Définissez essentiellement vos graphiques et intégrez un extrait de code à l'endroit où vous souhaitez afficher le graphique. Nous prenons également en charge des mécanismes facilitant l’intégration dans un CMS ou un autre portail Web personnalisé.

0
M Schenkel