首页 文章

从Google Analytics获取所有数据

提问于
浏览
0

我是谷歌分析的新手(1周前开始使用它),我试图提取特定日期的所有可用数据并将其插入到mysql数据库中 . 我希望获得特定日期可用的所有内容 .

$optParams = array( //OPTINAL SETTINGS
          'dimensions' => 'ga:campaign, ga:medium, ga:source, ga:adContent, ga:keyword', //A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'. (string)
          'metrics' => 'ga:adClicks, ga:adCost, ga:goalValueAll, ga:goal1Completions, ga:goal6Completions',
          'max-results' => 10000,
          'samplingLevel' => 'HIGHER_PRECISION'
          ); //The maximum number of entries to include in this feed. (integer)

       $requestedInfo = '';
       $requestedInfo .= 'ga:sessions';


$data = $analytics->data_ga->get('ga:XXXXX', '2015-04-07', '2015-04-07', $requestedInfo, $optParams);

结合两个维度(主要维度,次要维度)时,此代码将比我在平台上获得的结果少得多 . 我获得了数千条特定组合的记录,并且我的代码获得了600的范围 . 我想知道如何格式化我的查询以获得所有数据(所有可用的记录)然后对它进行排序然后我想要 .

另外,我应该为每个广告系列创建一个不同的MySQL表格,媒体等,还是包含所有广告系列的一个就足够了?

1 回答

  • 2

    A few things to note:

    首先你 aren't going to be able to get ALL of your data . 每个配置文件ID(视图)每天限制为10000个api请求 . 最大行数为10000.即使是一个小型站点,您也很难获得所有数据,并且数据可能无法正确回复自身 .

    其次,即使您使用日期作为主键,返回 will not relate back to itself correctly 也会限制为8维,因为数据是根据您所做的初始请求计算的 .

    即使您将数据设置为higher_percission,第三个大型查询 are 也会对数据进行采样 .

    Your issue:

    至于为什么你的回报较少 . 我想你应该尝试使用query explorer稍微处理你的请求 . ga:关键字如果未设置则在某些情况下不会返回任何内容 . 它的查询减少了行数 .

    您需要将Google Analytics数据视为 multidimensional database 而不是关系数据库 . 它们是有区别的 .

    Big Query

    更好的方法是让Google extract your Data为你进入Big Query,这将允许你随心所欲地做它 . API的限制不适用于Big查询中的Google Analytics数据 . 这要求你有Premium Google Analytics account

相关问题