使用RGoogleAnalytics从谷歌检索数据

时间:2014-01-13 03:19:00

标签: r google-analytics-api

我正在使用RGoogleAnalytics检索多个维度数据,但每次我尝试运行ga.data <- ga$GetReportData(query)时 然后我收到一条错误消息:fromJSON中的错误(api.response.json,method =“C”):   pos 53意外逃脱的角色'\'' 我尝试其他功能时没关系 我怎么能解决这个问题? 我使用以下代码:

require("RGoogleAnalytics")

query <- QueryBuilder()
access_token <- query$authorize()                                                

ga <- RGoogleAnalytics()

ga.profiles <- ga$GetProfileData(access_token)

profile <- ga.profiles$id[3] 
startdate <- "2013-10-01"
enddate <- "2013-12-31"
dimension <- "ga:date,ga:source,ga:medium,ga:keyword,ga:city,ga:operatingSystem,ga:landingPagePath"
metric <- "ga:visits,ga:goal1Completions,ga:goal3Completions"
sort <- "ga:visits"
maxresults <- 500000

query$Init(start.date = startdate,
           end.date = enddate,
           dimensions = dimension,
           metrics = metric,
           max.results = maxresults,
           table.id = paste("ga:",profile,sep="",collapse=","),
           access_token=access_token)

ga.data <- ga$GetReportData(query)

2 个答案:

答案 0 :(得分:1)

我也遇到了一些麻烦,想办法。

第1步:安装软件包

# lubridate
       install.packages("lubridate")
# httr 
       install.packages("httr")
#RGoogleAnalytics

使用此链接下载此特定版本的RGoogleAnalytics   http://cran.r-project.org/web/packages/RGoogleAnalytics/index.html

第2步:创建客户ID和密码

  1. 导航至Google Developers Console。 (https://console.developers.google.com/project
  2. 创建一个新项目并打开它。
  3. 导航到API并确保为您的项目启用了Analytics API。
  4. 导航到凭据并创建新客户端ID。
  5. 选择应用程序类型 - 已安装的应用程序。
  6. 创建客户端ID和客户端密钥后,将其复制到R脚本中。

    client.id <- "xxxxxxxxxxxxxxxxxxxxxxxxx"
    client.secret <- "xxxxxxxxxxxxxxx"
    token <- Auth(client.id,client.secret)
    

    为将来的会话保存令牌对象

    save(token,file="./token_file")
    
  7. 在将来的会话中,您不必每次都生成访问令牌。假设您已将其保存到文件中, 它可以通过以下代码段加载 -

    load("./token_file")
    

    验证并刷新令牌

    ValidateToken(token)
    

    第3步:构建所需的查询

    query.list <- Init( start.date = "2014-08-01",
                        end.date = "2014-09-01",
                        dimensions = "ga:sourceMedium",
                        metrics = "ga:sessions,ga:transactions",
                        max.results = 10000,
                        sort = "-ga:transactions",
                        table.id = "ga:0000000")
    

    创建查询构建器对象,以便验证查询参数

    ga.query <- QueryBuilder(query.list)
    

    提取数据并将其存储在数据框

    ga.data <- GetReportData(ga.query, token,paginate_query = FALSE)
    

    便利链接

    常见错误:developers.google.com/analytics/devguides/reporting/core/v3/coreErrors#standard_errors

    查询资源管理器: ga-dev-tools.appspot.com/query-explorer/?csw=1

    维度和指标 developers.google.com/analytics/devguides/reporting/core/dimsmets

答案 1 :(得分:0)

当Rjson库无法正确解析Google Analytics JSON Feed时,似乎会出现此错误。请试用CRAN中最新发布和更新的RGoogleAnalytics库版本。