Hace unas semanas conocimos la noticia de Google Analytics había publicado su API pública para permitir que usáramos nuestros datos almacenados en sus servidores en nuestras aplicaciones. Si estás interesado en ella y además el lenguaje de programación que quieres usar es PHP esta class
hará tu vida más fácil.
<?php
// include the Google Analytics PHP class
include "googleanalytics.class.php";
// create an instance of the GoogleAnalytics class using your own Google {email} and {password}
$ga = new GoogleAnalytics('{email}','{password}');
// set the Google Analytics profile you want to access - format is 'ga:123456';
$ga->setProfile('{GA Profile ID}');
// set the date range we want for the report - format is YYYY-MM-DD
$ga->setDateRange('2009-04-01','2009-04-07');
// get the report for date and country filtered by Australia, showing pageviews and visits
$report = $ga->getReport(
array('dimensions'=>urlencode('ga:date,ga:country'),
'metrics'=>urlencode('ga:pageviews,ga:visits'),
'filters'=>urlencode('ga:country=@Australia'),
'sort'=>'-ga:pageviews'
)
);
//print out the $report array
print_r($report);
?>
Modo de empleo
Como vemos en el código, además de llamar a la class
al inicio del fichero declaramos una nueva instancia del objeto GoogleAnalytics
, al que le pasamos los parámetros de email y password, los que usamos para hacer login en Google Analytics. Despues indicamos el perfil del que queremos obtener datos. Este perfil lo podemos obtener de la misma página de Google Analytics. Simplemente hace referencia al ID asociado a la página web que vemos en el menú, en la URL podemos encontrarlo fácilmente.
El formato requerido es el siguiente: ga:XXXXXX
donde XXXXXX
es el id
que vemos arriba en la imagen.
Ya solo nos queda indicar un rango de fechas en formato YYYY-MM-DD y lanzar la petición de lo que queremos solicitar.
$report = $ga->getReport(
array('dimensions'=>urlencode('ga:date,ga:country'),
'metrics'=>urlencode('ga:pageviews,ga:visits'),
'filters'=>urlencode('ga:country=@Australia'),
'sort'=>'-ga:pageviews'
)
);
El resultado lo recibimos como un array con los datos solicitados.
Array
(
[20090406~~Australia] => Array
(
[ga:pageviews] => 11
[ga:visits] => 9
)
[20090401~~Australia] => Array
(
[ga:pageviews] => 8
[ga:visits] => 6
)
[20090402~~Australia] => Array
(
[ga:pageviews] => 8
[ga:visits] => 4
)
[20090405~~Australia] => Array
(
[ga:pageviews] => 4
[ga:visits] => 2
)
[20090407~~Australia] => Array
(
[ga:pageviews] => 4
[ga:visits] => 2
)
[20090403~~Australia] => Array
(
[ga:pageviews] => 2
[ga:visits] => 2
)
)
10 comentarios, 4 referencias
+
#