Un client pour Google Analytics simplement en HTML, CSS et JavaScript

Depuis le temps que je me plains du fait que Google Analytics ne propose qu’une interface contenant du Flash, il était temps que je trouve quelque chose de mieux. De surcroît, passant en ce moment pas mal de temps chez la famille le week-end, je n’ai pas toujours d’accès à Internet autre que celui de mon smartphone, donc il me fallait une interface que celui-ci serait capable d’utiliser. J’avais jusqu’à récemment un BlackBerry 8520 ne supportant que le HTTP et le CSS (et un tout petit peu le JavaScript, mais pas de quoi faire ce dont j’avais besoin), et aujourd’hui j’ai quelquechose d’autre, un petit peu plus évolué, mais ne gérant pas le flash. Enfin, comme je vais voir l’évolution du nombre de visiteurs pour ce présent site plusieurs fois par jour, il est toujours énervant d’avoir à chaque fois à reloader l’appli flash de sélection du jour, etc. Donc il fallait que je trouve sur le web quelque chose de simple, léger, rapide. Ou que je le développe moi-même.

J’ai donc réfléchis au début à faire quelque chose juste en HTTP/CSS, mais je dois avouer que j’ai vraiment eu du mal. Je voulais depuis le début baser le tout sur un compte AppEngine, donc il fallait que ce que je développe soit compatible avec leur plateforme, ce qui n’a pas été le cas pour les premiers essais que j’ai fait avec leur librairie Analytics (que j’ai testé au début) présente au sein de la Gdata Python. Bref (en fait, leur librairie Gdata Python / Analytics fonctionne très bien, mais elle ne fonctionne par sur le dev_appserver de AppEngine). Entre temps, comme je l’expliquais plus haut, j’ai changé de smartphone, et le nouveau s’est révélé tout à fait capable de supporter le Javascript, donc je suis passé sur le client Javascript fournit sur la doc de Google.

Comme d’habitude, je le répète, loin de moi l’idée de me vanter ici : je ne fais ce genre d’application que pour me prouver que je suis capable de les faire, ayant l’impression perpétuelle d’être mauvais en programmation. Et puis au passage, je mets le service à dispo pour tout le monde, parce que ça ne coûte rien et que ça peut servir.

Sur le coup, le but était multiple : au début, il fallait que je créée un client Analytics en HTTP/CSS/JS qui fournirait les infos que je vais voir le plus souvent sur Analytics (les pages les plus vues de la journée en cours, ainsi que le nombre de visiteurs uniques/pages vues de la journée en cours). Par la suite, j’ai eu l’opportunité de rajouter des graphiques dessus, ce qui m’a permit de « valider » une promesse que je m’étais faite au début de l’année.

Donc en terme de technologies utilisées, il y a une base de pages simples en python sur AppEngine (ce qui permet d’avoir un coût d’hébergement égal à zéro), avec une base de Javascript via la doc pour JavaScript donnée par Google, avec une surcouche de JavaScript via la librairie JSCharts qui créée des graphiques via des balises <canvas> (c’est donc du HTML5, mais mon smartphone supporte ça très bien). J’ai utilisé les graphiques en bâtons et en courbes.

Les écrans de l’application

Je ne vais pas y aller par quatre chemins. D’abord et avant tout, plutôt qu’un long discours, l’application est disponible ici.

Pour le reste, l’application fonctionne comme suis : (J’ai gardé l’interface de base du client Javascript fourni par Google, et j’ai rajouté/compilé/adapté quelques fonctionnalités.)

Après vous être loggué chez Google (l’application ne retient aucun mot de passe, tout se passe chez vous), vous arrivez sur un écran. Cliquez sur le bouton « Get Account Data », et vous obtiendrez laliste des comptes que vous avez chez Analytics. A droite de chaque compte, un bouton « Choose » qui met dans le champ le code correspondant au compte sélectionné.

Ne vous reste plus ensuite qu’à cliquer sur le bouton « Get PageWiewed » pour obtenir la liste des pages les plus vues sur la journée (par contre, je n’ai pas encore réussi à résoudre le problème d’encodage) :

Ou bien vous pouvez également cliquer sur le bouton « Get Visits » pour obtenir la liste des visites uniques, nombre de pages vues et ratio sur les 14 derniers jours. Les données affichées sont exactement les mêmes que celles que vous aurez en allant sur votre compte Analytics (si si, vérifiez, si vous ne le croyez pas).

Je compte améliorer le client, histoire de rajouter les fonctionnalités de listing des mots clefs/sites référents sur la dernière journée, mais aussi  des visiteurs (navigateurs, système d’exploitation, etc) sur les 14 derniers jours, sur les modèles des pages existants déjà.

Pour ce qui est du support des différents navigateurs, je sais que cela fonctionne sur Firefox 3.6.x, Chrome 5 et 6, et même Internet Explorer 7 (pour ceux qui seraient dessus…) (oui, ce sont les navigateurs testés ; je n’ai pas les autres sous la main).

Vous remarquerez également que le compte AbriCoCotier Application contient :

  • Un outil de Whois (qui passe par l’API de WhoisXMLAPI en HTTP car AppEngine n’autorise que ce port là)
  • Un outil pour vous donner votre IP
  • Un compteur de mots
  • Je compte rajouter d’autres applications, me permettant d’aller me frotter à d’autres API de Google, ou autres.

Je suis bien sûr au courant que ces petits outils existent déjà, mais ils font partie de ma volonté de « les avoir fait moi-même ».

Si vous avez un commentaire là dessus, ou souhaitez rapporter un bug, une faute d’orthographe, n’hésitez pas, les commentaires sont faits pour ça.

Laisser un commentaire

Votre adresse e-mail 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.