From c34fa79b7c065bbaf5aca0a50f593530cee6a002 Mon Sep 17 00:00:00 2001 From: pengtao Date: Tue, 3 Sep 2019 11:59:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E6=97=B6=E6=96=B0=E5=A2=9E=E4=BA=BA?= =?UTF-8?q?=E6=95=B0=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gather_new_user.py | 51 ++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 47 insertions(+), 4 deletions(-) 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)