从 Google Analytics 中导出在每个会话中访问的 URL

Export URLs accessed in each session from Google Analytics

使用 Google Analytics Sessions API 我可以获得会话中的总点击量(即总页面浏览量和事件等)。

有没有办法获取会话中发生的所有页面浏览量和事件的列表?如果无法使用核心报告 API 获取此数据,如果使用 Google Analytics Premium,是否可以将其导出到 BigTable?

我自己没有做过,但是如果你想导出会话,BigQuery Export schema 列出了几个相关字段,例如 fullvisitorId (a.k.a.Clientid)、Visitnumber 和 Visitid ("An identifier for this session").所以我会说是的,这应该可以使用 BigQuery(通过每个 visitid 导出每个 hits.page.pagePath)。

您有 2 个解决方案。

一种常见且最简单的解决方案是将用户 ID 添加为 "custom dimension",这样您就可以按用户提取所有数据(包括会话和交互)。

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-54241350-4', 'auto');
  ga('set', 'dimension1', ga.getAll()[0].get('clientId'));
  ga('send', 'pageview');

</script>

这对我有用,但我需要警告您此代码位于灰色区域,因为根据正在监视您帐户的 Google 团队,您可以也可以不这样做,因为它可以被视为违反策略(会话的隔离能力)。

或者通过 Google Big Query 你可以通过

SELECT 
    hits.page,
    CONCAT(fullVisitorId, string(VisitId)) AS VId,
    CONCAT(visitId, date) AS SID
FROM  
    TABLE_DATE_RANGE([xxxx.ga_sessions_], TIMESTAMP('2016-05-01'), TIMESTAMP('2016-05-10')) 
GROUP BY 
    hits.page, VId, SID

但此解决方案仅适用于高级用户,如果是这种情况,您可以选择在 Big Query 中获得免费配额。