我试图按页面路径向下过滤数据,这在大多数情况下非常简单。但是,我得到了意外的结果:
data = service.data().ga().get(
ids='ga:' + profile_id,
start_date='2018-06-15',
end_date='yesterday',
metrics='ga:sessions,ga:newUsers,ga:sessionDuration,ga:goal12Completions,ga:goal4Completions,ga:goal5Completions,ga:bounces,ga:users',
dimensions='ga:date,ga:sourceMedium,ga:userType,ga:country,ga:region,ga:city,ga:pagePath',
sort='ga:date',
filters='ga:pagePath=~/path1/path2.*',
start_index=index,
max_results=10000).execute()
return data
Google Analytics(分析)中的数据具有如下结构的页面数据:
我希望上面的过滤器可以为这些页面结构中的每一个返回数据,但是,它仅返回路径2之后具有参数的页面的数据。
我尝试了多种方法来过滤此数据,包括:
filters='ga:pagePath=@/path1/path2'
filters='ga:pagePath=@/path2'
我还试图将搜索字符串作为变量传递到产生相同结果的过滤器中。
我也已经在查询浏览器中对其进行了测试,其结果与脚本相同。但是,在GA的高级过滤器区域中过滤相同的regex表达式,可以得到上面第一个项目符号列表期望的结果。我还将一些数据放入一个文本文件中,并对其进行了正则表达式搜索,这给了我所有预期的结果。
我的下一步是测试删除特定指标,以查看是否有组合产生了问题,但根据文档应该没有。
对调试或纠正过滤器的后续步骤有何建议?
答案 0 :(得分:0)
将过滤调整为“包含子字符串”方法将解决您的问题。请参阅Google Analytics(分析)API reference guide,以查看所有可用的过滤选项。另外,我强烈建议您在Google Analytics(分析)用户界面中仔细检查您的原始数据源,以确保您要查找的URL实际上可用。
var mysql = require('mysql');
var connection = mysql.createConnection(connectionOptions);
connection.query(
"SELECT * FROM pruebas.Usuarios2 where RFC = '123'",
(err, result, fields) => {
if (result.length) {
// here I need an instruction that can send me the result of 3
// to my javascript console
} else {
console.log('no login');
}
}
);