问题描述
我一直在创建一个自动报告生成脚本,该脚本将从用户使用情况报告中获取数据并将其放入 Google 表格中。到目前为止,我的脚本运行良好,但我返回的数据对我来说似乎有点奇怪。
我从我创建的一个名为 report raw 的函数中生成报告。我是编码新手,所以很容易,但这就是我提取信息的方式。然后我将它放入字典并使用该字典在几天内创建报告。该报告的想法是跟踪谷歌应用程序的使用情况,以创建另一种查看出勤率的方式。例如,报告将查看每个工作日,每天进行比较,然后根据使用情况制定指标。
def report_raw(date_entry,userkey,parameters,rep,maxresults):
date = Date()
creds = google_authenticate()
service = build('admin','reports_v1',credentials=creds)
user_log = {}
fieldnames = config_settings('d:/data/reports/data.csv','')[0]['Fieldnames']
#this calls the API to generate a user report with specific variables
results = service.userUsageReport().get(userKey='all',date=date_entry,maxResults = maxresults).execute()
if 'usageReports' not in results:
return 'data is not ready for export'
else:
for result in results.get('usageReports'):
email = result['entity']['userEmail']
activities = result['parameters']
user_log[email] = {}
for activity in activities:
for fieldname in fieldnames:
if activity['name'] == fieldname:
for key,value in activity.items():
if key == 'name':
x = value
user_log[email][x] = value
user_log['date'] = {'date' : str(date_entry),'weekday' : date.today.weekday()}
return user_log
我遇到的问题是,如果我为 2021-01-25 等特定日期生成报告,我将获得 2021-01-26 某些用户,而大多数其他用户则坚持在 2021-01-25 时间范围内。当我生成第二天的报告时,在这种情况下 2021-01-26,在 2021-01-26 显示活动的用户没有价值变化.最重要的是,一些用户有 1970-01-01 的交互时间(我假设这意味着他们从未与该服务交互,因为它已经开始跟踪他们的信息,因为那是 Unix 的开始时间)。我想知道是否有人使用过用户使用报告,以及我生成报告的方式是否有误。谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)