11

在JavaScript中,我試圖訪問google縮短的網址分析數據,for example。我累了'URL Shortener API',這工作正常,我收到數據。但是,這些數據並沒有針對當天或當月的每個小時的每個小時的分析報告,因爲其可在here上獲得。在這裏作爲迴應,它有一些屬性,例如包含我需要的點擊次數的'點擊'和'桶'。檢查下面的圖片:Google Analytics for short urls

enter image description here

但是,這些特性都沒有在我的「縮短服務API」接收到的數據可用。爲此,我可能會使用Google分析API。任何人都可以建議我如何使用分析API來獲取任何縮短網址的分析?

謝謝

回答

7

您確定您正確使用URL Shortener API嗎?

如果我檢查你提供了包含你所需要像前兩個小時的報告(每小時不存在)的數據或過去一天的例子中,我可以看到,例如:

  • 6的總點擊次數過去兩個小時。
  • 過去一天中點擊1243次。

如果我試圖讓相同的數據與URL縮短API相同的短網址:

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 URL Builder爲您的網址生成自定義廣告系列參數。

沒有爲谷歌網址構建器沒有API,但你可以通過提供的一個鏈接的詳細信息生成自己的合法網址,並在您的非短網址像utm_sourceutm_medium末尾添加一些或所有的參數, 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等,以獲取您的應用程序中需要的所有數據。

+0

是的,我正確使用它。我得到了相同的一組數據。它不會按日期或按小時獲取數據。它顯示「日」屬性中最近24小時的點擊次數,但不顯示上次日期或今天的點擊次數。讓我們在今天上午10點通過縮短api,你會在昨天上午10點到今天上午10點之間獲得點擊。但是,今天,昨天或其他任何一天都沒有單獨的點擊次數。同樣適用於數小時。但是,如果您訪問上面提到的url中的縮短網址分析,則在響應中每天都有數據,而且每個小時都有數據。 – shaaaa

+0

對不起,在第一次閱讀時並沒有這樣做,我在答案中添加了更多信息,並提供了一個示例以從Google Analytics API檢索數據以獲取數據。 – HiDeo

+0

嗨,感謝您的更新。但是我無法正確使用這些信息。我是否允許爲我不擁有的網站獲取分析報告?爲了獲得viewId,我在我的分析中添加了google的shorturl,但我沒有收到任何訪問者報告。如果你能在小提琴上創建一個例子,我將不勝感激。謝謝 :-) – shaaaa