1
Google 애널리틱스에서 API를 통해 가져오고 자하는 측정 기준과 측정 항목이 여러 개 있습니다. 측정 기준 : 측정 항목이 필요합니다. 당연히, 나는 사전이 이것에 대한 좋은 선택일지도 모른다고 생각했다. 타이핑을 최소화하고 가독성을 높이기 위해 내가 시도한 것입니다. 의도 한대로파이썬 : 사전을 만드는 더 좋은 방법이 있습니까?
def get_ga_kpi(start_date, end_date, dimensions='', sort='ga:pageviews'):
service = build('analytics', 'v3', http=http)
metrics = query_dict[dimensions]
if sort not in metrics:
sort = metrics[0]
data_query = service.data().ga().get(**{
'ids': 'ga:#######',
'metrics': '%s' % (','.join(metrics)),
'dimensions': '%s' % (dimensions),
'start_date':'%s' % (start_date),
'end_date':'%s' % (end_date),
'sort': '-%s' % (sort)
})
return feed['rows']
코드는 작동하지만,이 문제를 접근하는 더 나은 방법이 있는지 궁금 하군요 :
dim_dict = {
0:'',
1:'ga:searchUsed',
2:'ga:searchKeyword',
3:'ga:pageTitle',
4:'ga:operatingSystem',
5:'ga:goalPreviousStep3'
}
metric_dict = {
1:'ga:sessions',
2:'ga:sessionDuration',
3:'bounceRate',
4:'pageviews',
5:'ga:searchSessions',
6:'ga:goalCompletionsAll'
}
dim_metric_dict = {
0:[1,2,3,4,5,6],
1:[1,2,3,4,5,6],
2:[1,2,3,4,5,6],
3:[1,2,3,4,5,6],
4:[1,2,3,4,5,6],
5:[6]
}
query_dict = {}
for dim_key in dim_dict.keys():
met = []
for metric_key in dim_metric_dict[dim_key]:
met.append(metric_dict[metric_key])
query_dict.update({dim_dict[dim_key]:met})
그럼, API 요청을하려면 다음 코드를 사용하고 있습니다. 어떤 의견을 주셔서 감사합니다!
를 내가 무엇을보고에서, 그것은 가장 좋은 방법입니다 - 그렇지 않으면 당신은 당신이 압축을 –
그것은 될 수있는 사양으로 YAML을 파싱 경우를 시도 할 수 있습니다 데이터 파일에 저장 - 소스에 포함될 많은 데이터입니다. –
@Lattyware, "소스"가 의미하는 바를 정교하게 표현할 수 있습니까? 데이터 파일은 어떻게 생겼을까요? 나는 아직도 어휘를 배우고있다. – chungsangh