Il y a quelques jours de cela, Google a annoncé l’ouverture de son API pour Analytics.
Et du coup j’y ai jeté un coup d’oeil. Et plus particulièrement avec rails en utilisant le gem gdata.
Tout d’abord sachez que la chose a été faite un peu rapidement. Je ne l’ai pas pluginisée. J’ai uniquement fait un modèle permettant de faire les appels nécessaires; la chose est très peu testée et est surtout à utiliser pour découvrir cette API.
Voici donc mon modèle.
Vous devez l’initialiser avec votre login et mot de passe :
Analytic.new 'you@example.com', 'your_password'
Puis deux méthodes y sont disponibles :
find_sites, qui retourne la liste de tous les profils associés à votre compte.
find_datas, qui retourne les données demandées pour tous les sites et pour la tranche de date définie.
Par défaut, vous aurez le nombre de visiteurs et le nombre de pages vues pour la veille.
Du coup on peut également l’afficher :
Notre contrôleur, pour récupérer les données.
La vue pour les afficher.
Et le code avec colorisation syntaxique.
Encore une fois, ceci est un test fait assez rapidement. Mais qui fonctionne.
Si vous cherchez à utiliser la chose dans un contexte moins scolaire, je vous invite à jeter un oeil sur gattica, un gem créé spécifiquement pour récupérer les données de cette API.
L’utilisation en est assez simple. Et vous pouvez même l’utiliser en dehors de rails (mais uniquement en ruby, cela va de soi).
Commencez par l’installer :
gem install cannikin-gattica -s http://gems.github.com
Puis incluez le dans votre application
require 'gattica'
Vous devez avoir fait un require de rubygems avant (rails le fait automatiquement).
Pour récupérer la liste de tous vos profils :
gs = Gattica.new 'you@example.com', 'password'
accounts = gs.accounts
Et pour récupérer les visiteurs et pages vuex de la veille :
results = gs.get(
:start_date => 1.day.ago.to_date.to_s(:db),
:end_date => 1.day.ago.to_date.to_s(:db),
:metrics => ['pageviews', 'visitors']
)
Sympa non ?
PS : Ted a 31 ans aujourd’hui.
PPS : et moi 23.





