diff --git a/gather_new_user.py b/gather_new_user.py index 20d42de..abdb923 100644 --- a/gather_new_user.py +++ b/gather_new_user.py @@ -16,7 +16,7 @@ mydb = MysqlBase(**DB) def get_last_time(gameid, channelid, ad_channel): sql = f"""SELECT - create_time + register_time FROM newusers_line where @@ -24,7 +24,7 @@ def get_last_time(gameid, channelid, ad_channel): and channelid={channelid} and ad_channel={ad_channel} ORDER BY - create_time DESC LIMIT 1""" + register_time DESC LIMIT 1""" data = mydb.query(sql) try: last_time = data[0][0] @@ -44,7 +44,50 @@ def comp_datetime(x, y): def gather_data(last_time, gameid, channelid, ad_channel): - print(f"start via {last_time}") + begin = (datetime.datetime.strptime(last_time, "%Y-%m-%d %H:%M:%S") - datetime.timedelta( + minutes=TimeDelay)).strftime("%Y-%m-%d %H:%M:%S") + total_user_sql = f"""select + count(accountid) + from + newuser + where + gameid={gameid} + AND channelid={channelid} + AND ad_channel={ad_channel} + AND register_time <{last_time}""" + + try: + data = mydb.query(total_user_sql) + total_user = data[0][0] + except Exception: + log.error(f"get total user failed!{data}") + total_user = 0 + + new_user_sql = f"""select + count(accountid) + from + newuser + where + gameid={gameid} + AND channelid={channelid} + AND ad_channel={ad_channel} + AND register_time BETWEEN {begin} AND {last_time}""" + try: + data = mydb.query(total_user_sql) + new_user = data[0][0] + except Exception: + log.error(f"get total user failed!{data}") + new_user = 0 + table_name = 'newusers_line' + temp = {} + temp['gameid'] = gameid + temp['channelid'] = channelid + temp['ad_channel'] = ad_channel + temp['new_user'] = new_user + temp['total_user'] = total_user + temp['last_time'] = last_time + mydb.insert(table_name, temp) + def run(gameid, channelid, ad_channel): @@ -59,7 +102,7 @@ def run(gameid, channelid, ad_channel): def main(): gameid = 2001 channel = 6001 - ad_channel = "xx" + ad_channel = "" run(gameid, channel, ad_channel)