Jul 14 2009

I dati di GA in Google Earth ed Excel

autore: Marco Cilia categoria: API tag: , ,

google-earthOggi voglio segnalare due strumenti che potrebbero tornarvi utili se usate Google Analytics e spesso avete necessità di avere i dati anche fuori dalla sua interfaccia.

Il primo strumento è carino anche se relativamente utile, ma è indubbiamente più performante della carta geografica dei visitatori che propone GA: si tratta della possibilità di visualizzare la provenienza geografica delle visite su un comodo livello di Google Earth.
Per utilizzarlo bisogna andare nel report Visitatori -> Overlay carta geografica, selezionare il periodo temporale e il livello di dettaglio desiderato (città o paese, gli altri due non rendono bene), esportare tutto in xml e dare in pasto il file alla pagina che ho linkato, che restituirà un file .klm da aprire in Google Earth. I simbolini colorati rappresentano il numero di visite provenienti da quella città o da quel paese; ad esempio una puntina gialla significa tra le 0 e le 50 visite, mentre un segnaposto verde tra le 4000 e le 8000 visite.

Il secondo strumento invece è decisamente più utile, e sfrutta le API di esportazione per “tirare dentro” Excel i dati di Google Analytics. Quante volte infatti durante le analisi più spinte e gli incroci di dati più estremi siamo stati costretti ad esportare i report da GA in CSV (o direttamente in Google Docs, se avete letto questo mio vecchio post), per poi importarli in Excel? e quante volte abbiamo dovuto rifare il procedimento perché avevamo un nuovo set di dati offline e dovevamo allineare i dati di Analytics? da oggi tutto questo fa parte di un modo di lavorare passato, i dati saranno sempre aggiornati e nella cella giusta!

Per fare ciò è necessario aprire Excel, poi strumenti -> macro -> visual basic editor. da lì tasto destro su VBAproject (Cartel1) – che dovrebbe essere il nome predefinito del progetto, almeno su Excel 2003 – e inserisci -> modulo.
A questo punto andare sulla pagina personale di Mikael Thuneberg, copiare tutto il codice e incollarlo nella finestra del modulo di Excel. Poi andare su strumenti -> riferimenti e aggiungere una selezione su Microsoft XML, v6.0, premere OK e poi salvare il lavoro Cartel1. Chiudere la finestra di Visual Basic Editor e salvare il file tramite file -> salva con nome… scegliere come tipo di file componente aggiuntivo di Microsoft Excel (*.xla) e salvarlo nella cartella AddIns (che su Windows vista è in /nomeutente/AppData/Roaming/Microsoft/Addins, ma su altri sistemi operativi potrebbe trovarsi altrove. Di norma Excel propone da solo la cartella giusta alla selezione degli xla) con il nome – ad esempio – di GA.xla. Ora da strumenti -> componenti aggiuntivi mettere la spunta su GA e premere OK e riavviare Excel.

Le due funzioni sono disponibili dal menu Inserisci -> funzione nella sezione definite dall’utente, e sono:

  • getGAautheticationToken: dati una email e una password richiama una stringa necessaria per le interrogazioni successive
  • getGAdata: dati una serie di parametri di ingresso (il numero dell’account, il periodo temporale, le metriche e i filtri) richiama da Google Analytics i dati necessari e li memorizza in Excel

Da notare che il sistema non funziona se si è dietro a un proxy, richiede una connessione a internet diretta.
Per fare lo stesso mestiere esisterebbe anche Excellent Analytics, ma ha come prerequisito Excel 2007, per cui non l’ho potuto provare.

[edit: 13 agosto: Il blog ufficiale ha un nuovo post con altri strumenti per integrare GA ed Excel]


May 03 2009

Prova le API prima di iniziare a studiare

autore: Marco Cilia categoria: API tag: , ,

Ho iniziato a studiare come usare le API appena ho avuto cinque minuti di tempo, e come mi aspettavo non è tutto rose e fiori, per un programmatore medio come me. Tuttavia alcuni risultati ho iniziato ad averli, e penso che presto potrò proporre un primo banale utilizzo, e alcune altre idee mi stanno già balenando in testa.

Ma esiste un modo per provare ad estrarre dati senza iniziare a programmare, magari per rendersi conto di cosa si può fare e di che risultati si possono avere: http://vascodegapi.juiceanalytics.com, nuova creatura della ben conosciuta Juice Analytics. Vasco de GAPI è un’interfaccia web che, dopo aver effettuato l’autenticazione in Google Analytics, chiede all’utente di effettuare alcune scelte tramite menu a tendina: ad esempio chiede quale sia l’account dal quale ricavare i dati tra tutti quelli cui abbiamo accesso, le dimensioni e le metriche, il campo che comanda l’ordinamento dei risultati, eventuali filtri sui risultati e il periodo temporale di riferimento.

Una volta effettuate queste scelte, il sistema provvede ad effettuare un riepilogo delle impostazioni scelte e a richiamare i primi dati estratti, fornendo poi la possibilità di scaricarli tutti in un file .csv. A questo proposito c’è da notare che una delle condizioni di utilizzo delle API è che una singola chiamata non può generare più di mille risultati, ma che 1000 è comunque il doppio di 500, cioè del massimo ottenibile attraverso l’interfaccia web (anche se in passato vi ho mostrato un trucco mica male 🙂 ). Usando Vasco de GAPi si possono quindi ottenere senza sforzo, e senza scrivere una riga di codice, le prime mille keyword dell’omonimo report.

L’altro lato positivo è che il sistema provvede anche a fornire un esempio funzionante del codice che può essere usato per ottenere i medesimi risultati: in questo caso però bisogna essere esperti programmatori, poiché il linguaggio utilizzato è Python che implementa Google data.
Il sistema in sé non produce quasi niente che non si possa fare con un custom report, ma ha il grande pregio di mostrare i risultati di un possibile export senza toccare il codice, e di far prendere confidenza con la nomenclatura usata nella API; ad esempio la metrica delle pagine viste si chiama ga:pageview

Vasco de GAPI non ha accesso permanente al vostro account Google, né memorizza ovviamente alcuna password: per utilizzarlo dovete essere loggati in GA oppure dovete loggarvi all’istante, e poi dare esplicitamente il consenso affinché Vasco abbia accesso ai dati. Esiste chiaramente una procedura per rimuovere questa autorizzazione, descritta qui, ma io non trovo il link relativo ai siti autorizzati.

Concludo dicendo che nel post di presentazione dello strumento, Juice Analytics rivela che il loro strumento per la coda lunga Concentrare, di cui vi ho parlato a Gennaio, non usava nessuna API (nemmeno in beta) e si affidava a del sano e vecchio screen-scraping (catturare tramite un programma il contenuto di una pagina web). Mi ero sbagliato 🙂


Nov 08 2008

Aggirare il limite di 500 righe negli export

autore: Marco Cilia categoria: report tag: ,

c’è un modo per esportare tutti i dati di un report in GA?

intendo più delle 500 righe che si possono mostrare. Se un sito ha 20.000 keywords ad esempio, dovrei esportare 40 files. vorrei esportarle tutte in un unico file. è possibile?

Google Analytics permette di esportare i report in quattro formati differenti: pdf, xml, csv e tsv. Di questi il primo è il più aderente al report, ma anche il meno modificabile, il secondo permette di ricostruire il report quasi interamente (grafici compresi) ma richiede una conoscenza dell’xml (eXtensible Markup Language) abbastanza marcata, il terzo e il quarto si prestano molto bene ad essere importati in un foglio di lavoro di Microsoft Excel (o in altri fogli di calcolo) ed essere rielaborati. Però il limite di 500 righe è limitante, specialmente nei casi in cui i report siano molto “popolati”; il caso delle keyword è esemplare, ad esempio quando si vuole andare ad analizzare la cosiddetta “coda lunga”.

Il metodo per aggirare il limite nell’esportazione consiste nell’andare nel report che si vuole esportate, aggiungere all’URL il parametro
&limit=50000
e ricaricare la pagina con il tasto invio. Dopodiché impostare i record a 500: il report su schermo mostrerà sempre e comunque 500 righe, ma le esportazioni in csv e tsv (e solo quelle!) avranno tutti i record contenuti nel rapporto, fino ovviamente a un massimo di cinquantamila, che è davvero il limite estremo cui si può ambire per singolo file.