【问题标题】:Google Analytics for short urls谷歌分析短网址
【发布时间】:2016-07-04 22:10:35
【问题描述】:

在 javascript 中,我正在尝试访问谷歌缩短网址 for example 的分析数据。我厌倦了'URL Shortener API',它工作得很好,我收到了数据。但是这些数据没有一天中每个小时或一个月中每一天的分析报告,因为它可以在here 上找到。作为回应,它有一些属性,例如“点击次数”和“存储桶”,其中包含我需要的点击次数。查看下图:

但是这些属性在我使用“shortener API”收到的数据中不可用。为此,我可能会使用 Google 分析 API。谁能建议我如何使用分析 api 来获取任何缩短网址的分析?

谢谢

【问题讨论】:

    标签: javascript google-analytics google-api google-url-shortener


    【解决方案1】:

    您确定您正确使用了 URL Shortener API 吗?

    如果我检查您提供的示例,其中包含您需要的数据,例如过去两个小时(不存在每小时)或过去一天的报告,我可以看到例如:

    • 过去两个小时内总共点击了 6 次。
    • 过去一天点击了 1243 次。

    如果我尝试使用 URL Shortener API 为相同的短 url 获取相同的数据:

    curl -X "GET" "https://www.googleapis.com/urlshortener/v1/url?shortUrl=http://goo. gl/fbsS&projection=FULL&key=YOUR-API-KEY"
    

    我会得到相同的数据:

    {
      "kind": "urlshortener#url",
      "id": "http://goo. gl/fbsS",
      "longUrl": "http://www.google.com/",
      "status": "OK",
      "created": "2009-12-13T07:22:55.000+00:00",
      "analytics": {
        "allTime": /* ... */,
        "month": /* ... */,
        "day": {
          "shortUrlClicks": "1243",
          /* ... */,
        },
        "twoHours": {
          "shortUrlClicks": "6",
          /* ... */,
        }
      }
    }
    

    所以我过去一天有 1243 次点击,过去两个小时有 6 次点击,数据是相同的。

    如果您需要从所有时间获取所有数据,您要么必须自己存储数据,要么像您说的那样使用 Google Analytics。

    Google Analytics(分析)和短网址在 Google Analytics(分析)中可能很难处理,因为它们会将用户从他们的网站重定向到您的网站,这可能导致 Google Analytics(分析)将他们视为“直接”,而不是来自您指定的任何广告系列(时事通讯、Facebook、推特等)。

    您需要标记您的网址才能正确跟踪它们。通常,您需要使用Google URL Builder 为您的网址生成自定义广告系列参数。

    Google URL Builder 没有 API,但您可以使用上一个链接中提供的详细信息生成自己的有效 URL,并将部分或全部参数附加到非短 URL 的末尾,例如 utm_source、@ 987654328@、utm_term等

    当您的非短 URL 被正确标记后,​​您就可以使用任何您想要的服务来缩短它们。

    要取回数据,您需要使用 Google Analytics API,尤其是 Reporting API。

    一经认证,

    var discoveryURL = 'https://analyticsreporting.googleapis.com/$discovery/rest?version=v4';
    
    // Load the API
    gapi.client.load(discoveryURL)
      .then(function() {
        // Returns Analytics data.
        gapi.client.analyticsreporting.reports.batchGet({
          "reportRequests": [
            {
              "viewId": VIEW_ID, 
              // View IDs can be fetched from the Analytics Account Explorer
              // https://ga-dev-tools.appspot.com/account-explorer/
              "dateRanges": [
                {
                  "startDate": "7daysAgo",
                  "endDate": "today"
                }
              ],
              "metrics": [
                {
                  "expression": "ga:sessions"
                }
              ]
            }
          ]
        })
        .then(function(response) {
          var json = JSON.stringify(response.result, null, 2);
    
          // Do anything you want with the JSON returned.
        });
      });
    

    这里使用的主要功能是batchGet,您可以在Reporting API v4 reference 上获取有关您可以使用的字段和选项的所有信息。

    您将能够使用日期 (DateRange)、dimensions 等各种字段来获取应用程序中需要的所有数据。

    【讨论】:

    • 是的,我使用正确。我得到了和你一样的数据集。它不会按日期或按小时获取数据。它显示“day”属性中过去 24 小时的点击次数,但不显示最后日期或今天的点击次数。假设今天上午 10 点通过缩短 api,您将在昨天上午 10 点到今天上午 10 点之间获得点击。但它没有单独计算今天、昨天或其他任何一天的点击次数。同样适用于数小时。但是,如果您访问我上面提到的 url 中的缩短 url 分析,在响应中它有每天和每小时的数据。
    • 何抱歉,第一次阅读时没有明白,我添加了有关我的答案的更多信息以及从 Google Analytics API 检索数据以获取数据的示例。
    • 您好,感谢您的更新。但是我无法正确使用这些信息。我可以获取我不拥有的网站的分析报告吗?为了获得 viewId,我在分析中添加了 google 的 shorturl,但没有收到任何访问者报告。如果您可以在小提琴上创建一个示例,我将不胜感激。谢谢:-)
    猜你喜欢
    • 2012-10-13
    • 2012-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多