友盟API数据爬取与自动化报表
第一步:通过已有的账号密码获取通行密钥
#定义获取token的函数,此处相当于获取一个密匙来进一步获取数据
def authorize(user, pasw):
url = 'http://api.umeng.com/authorize'
body = {
'email': "%s"%(user), 'password': '%s'%(pasw)}
response = requests.post(url, params = body)
return response.json()['auth_token']
auth_token=authorize('账号','密码') #参数user代表友盟账号,pasw代表友盟密码,返回token,重要的密匙
第二步:拿到通行密钥后,使用其获取所有软件信息,目的是获取所需要的软件所对应的appkey
#定义获取app列表的函数,此处可获取到每个app对应的appkey,也是一个重要的密匙,来进一步获取某个app的数据
def apps(auth_token):
url = 'http://api.umeng.com/apps?&auth_token=%s'%(auth_token)
response = requests.get(url)
return response.json()
appkey = apps(auth_token)#参数auth_token是代表上面获取的token,返回当前公司的app列表
第三步:根据所获得的通行密钥auth_token和appkey获取所需自定义埋点事件的group_id
#获取自定义事件Group列表
def group_list(appkey, page, per_page, start_date, end_date, period_type, auth_token):
url = 'http://api.umeng.com/events/group_list?appkey=%s&page=%s&per_page=%s&start_date=%s&end_date=%s&period_type=%s&auth_token=%s'%(appkey,page,per_page,start_date,end_date,period_type,auth_token)
response = requests.get(url)
return response.json()
group_list = group_list('appkey', 页数, 每页条数, 开始时间,结束时间, 'daily', auth_token)
第四步:获取自定义埋点事件的事件数/用户数
#自定义埋点时间
def 事件名称(appkey,group_id,type,start_date,end_date,auth_token):
url = 'http://api.umeng.com/events/daily_data?appkey=%s&group_id=%s&type=%s&start_date=%s&end_date=%s&auth_token=%s'%(appkey,group_id,type,start_date,end_date,auth_token)
response = requests.get(url)
return response.json()
事件名称