[心得] RGoogleAnalytics

楼主: jklkj (诚实可靠小郎君)   2016-06-01 17:48:36
[关键字]:
RGoogleAnalytics
[重点摘要]:
之前有用RGoogleAnalytics捞取一些资料,也参考网络上一些资料做了自动的功能
想说跟大家分享一下,因为现在正值新工作蜜月期,所以比较有空分享
library("RGoogleAnalytics") #首先当然是要先library进来
client.id <- "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com"
client.secret <- "Vlww7gdXdSGnbGp3mdkR6r9H"
token <- Auth(client.id, client.secret) #我是习惯这样设,就是把帐密设给token
save(token, file="C:/Users/token_file") #这是把刚刚的token存起来
之后有需要就不用再跑一次
ValidateToken(token) #这是检察token有没有过期,如果过期的话会再次认证(好像)
profile <- GetProfiles(token) #这个可以看GA帐号里所有的table.id之后会讲
接下来就可以跑GA了
APPnewslist.list <- Init(start.date = "2016-01-01", #日期的标准格式
end.date = "2016-01-02",
dimensions = "ga:date", #GA的维度
metrics = "ga:pageviews", #GA的指标
https://developers.google.com/analytics/devguides/reporting/core/dimsmets
上面这个网址可以找GA的维度跟指标
max.results = 10000,#最大就是10000,如果需要更多等等讲
sort = "ga:date", #这是依照哪个维度做排序
必须是要在dimensions有下的才能用
table.id = ga:12345678) #刚刚说的table.id就是放在这
APP.query <- QueryBuilder(APP.list)
APP.data <- GetReportData(APP.query, token)
刚刚有说如果资料量大于10000怎么办 ^方法就是在token之后加个
paginate_query=True
APP.data <- GetReportData(APP.query, token, paginate_query=True) #像这样
然后如果你抓的资料区间过长,例如一年吧,GA就会用说资料来自几%的抽样
如果要避免这样的问题可以下split_daywise=True在token之后
这要RGoogleAnalytics就会每天去跑资料,但是如果中间某天资料量是0的话就会中断
但要记得GA一天好像可以接受10000笔的查询
但是如果你用split_daywise=True每天就算是一笔
感觉是很多,但是如果公司用的话其实一不小心就会超量,我在之前的公司就超过两次
之后就只能望着电脑发呆
写着写着突然发现我下班时间到了,明天再说怎么自动跑
作者: postpone (dead man)   2016-06-04 11:50:00
厉害!

Links booklink

Contact Us: admin [ a t ] ucptt.com