Nie takie API straszne, jak je malują - wykorzystaj środowisko R do pobierania danych z Google Analytics i Google Trends
Czy spotkałeś się kiedyś z sytuacją, w której funkcjonalności prezentacji i analizy danych w Google Analytics były dla Ciebie niewystarczające? Albo masz dość generowania cotygodniowych raportów w panelu GA, a następnie kopiowania ich do Excela? Jeśli tak, to świetnie trafiłeś. Do pozyskiwania takich informacji w sposób zautomatyzowany służy Analytics API (Application Programming Interface - automatyczny sposób komunikacji programów). Dzięki niemu proces pozyskania danych można usprawnić.
Google Analytics dysponuje zdecydowanie większą ilością dostępnych informacji niż te zawarte w standardowych raportach. Dzięki obsłudze API mamy do nich dostęp. Postaram się podzielić się z Tobą moją wiedzą na temat praktycznego wykorzystania API do pozyskania danych.
Jak zacząć?
Wystarczą 2 kroki. Pierwszy to aktywowanie API analyticsowego dla naszego konta (jeśli wcześniej nie zostało to zrobione), drugi to zainstalowanie bezpłatnego oprogramowania R (język programowania oraz środowisko do obliczeń statystycznych i wizualizacji wyników źródło: Wikipedia).
Aby uruchomić opcję korzystania z API należy wejść na stronę:
https://console.developers.google.com/
Do pracy z API musisz wygenerować client ID i client secret. Aby to zrobić, postępuj zgodnie z poniższymi krokami:
1. Otwórz Credentials page.
2. Jeśli nie robiłeś tego wcześniej, stwórz OAuth autoryzację dla swojego projektu, klikając w Create credentials, następnie kliknij w OAuth 2.0 client ID. Później konfigurator może poprosić cię o stworzenie nazwy dla produktu. Gdy przejdziesz przez ten etap, wybierz Other application i nadaj nazwę swojemu projektowi.
3. W pop-upie otrzymasz client ID i client secret.
4. Jeśli coś pójdzie nie tak i nie uzyskasz dostępu do tych informacji, w pop-up odszukaj Client ID w OAuth 2.0 i kliknij w nazwę.
Client ID i client secret to kluczowe ciągi znaków dla całego procesu pobierania danych z Twojego konta przy użyciu R. Dlatego sugeruję skopiowanie ich do notatnika.
Teraz musimy aktywować API dla naszego konta. Aby tego dokonać, postępuj zgodnie z poniższą instrukcją:
1. Otwórz stronę z informacjami dla Analytics API - Overview page.
2. Kliknij w przycisk Enable API, który aktywuje Analytics API.
Teraz pozostaje nam zainstalować R na komputerze. Oprogramowanie można pobrać z poniższej strony:
https://cran.r-project.org/bin/windows/base/
Jeżeli nie miałeś wcześniej styczności z takim oprogramowaniem, załączam również link z krótkim wprowadzeniem do R:
https://cran.r-project.org/doc/contrib/Komsta-Wprowadzenie.pdf
Zapoznanie się z całą zawartością wprowadzenia nie jest warunkiem koniecznym dla opisywanej metody. W Sieci dostępne są również darmowe szkolenia oraz fora informatyczne, na których programiści chętnie udzielają porad w kłopotliwych sytuacjach. Jednak w tym przypadku musisz wiedzieć jedynie, jak wykonywać kod w R i postępować zgodnie z instrukcjami.
Po wykonaniu powyższych kroków masz już wszystko, aby zacząć naszą przygodę z R i Analytics API. Aby podłączyć się do swoich danych musisz otworzyć R i zainstalować pakiet RGoogleAnalytics. Hash i wszystko co następuję po nim możesz pominąć. Jest to tylko komentarz, który nie jest interpretowany podczas kompilacji kodu. Służy on jedynie utrzymywaniu odpowiedniej dokumentacji i nadzoru nad tym, co dzieję się w skrypcie. Opisywanie swoich kroków przy pomocy komentarzy ułatwia rozumienie wcześniej stworzonego kodu.
# instalacja pakietu
install.packages("RGoogleAnalytics")
# ładowanie pakietu do pamięci R
library("RGoogleAnalytics")
# tworzy token
token<-Auth(client.id="client id ", client.secret = "client secret")
# zapisuje token
save(token,file="./token_file")
# sprawdza poprawność tokena
ValidateToken(token)
#Utworzenie listy przykładowych parametrów
query.list <- Init( start.date = "2015-09-01",
end.date = "2015-09-31",
dimensions = "ga:date,ga:source,ga:medium",
metrics = "ga:sessions",
max.results = 10000,
sort = "-ga:date",
table.id = "ga:identyfikator widoku danych")
# Utworzenie obiektu Query Builder
ga.query <- QueryBuilder(query.list)
# Umieszczenie otrzymanych wyników w obiekcie data.frame
dane <- GetReportData(ga.query, token, split_daywise = T)
# Wyświetlenie pozyskanych danych
dane
# Zapisanie ramki danych do pliku tekstowego
write.table(dane,"dane.txt",sep="\t")
Teraz przy tworzeniu własnych raportów i odnajdywaniu wzorców w danych nic nie jest w stanie Cię powstrzymać. Z pewnością nie będzie to panel Google Analytics. Może jedynie poziom Twoich umiejętności analizy danych w R, ale to zawsze można nadrobić.
R łączy się również bez trudu z Google Trends. Nie jest to jednak oficjalna dystrybucja API Google’a tylko opensourcowy pakiet stworzony przez środowisko pasjonatów R.
Google Trends daje możliwości sprawdzenia popularności określonych fraz w danym czasie i miejscu. Poniżej wykres popularności słów (jajka,karp,kielbasa) między 1 stycznia 2015 a 21 kwietnia 2016 w Polsce.
# instalacja pakietu gtrendsR
install.packages("gtrendsR")
# załadowanie pakietu do używanych bibliotek
library(gtrendsR)
# zapisujemy nazwę użytkownika konta do zmiennej
usr <- "przykład@gmail.com"
# zapisujemy Google’owe hasło do zmiennej
psw <- "haslo"
# łączymy się z Google Trends
gconnect(usr, psw)
# ch<- gtrends(c("kielbasa","jajka","karp"),start_date = "2015-01-01",end_date = "2015-12-01" ,geo = "PL")
ch
Stworzenie wykresu to już tylko jedna komenda.
plot(ch)