From 6f03007b1158bfba76ec728a7fb49cd72355c3d3 Mon Sep 17 00:00:00 2001 From: Andrei Stoica Date: Mon, 29 Jan 2024 10:44:46 -0500 Subject: [PATCH] fixed profile meta and game columns --- sqitch/deploy/profile-meta.sql | 1 + sqitch/verify/profile-meta.sql | 2 +- src/extract.py | 47 ++++++++++++++++++++++++++++------ 3 files changed, 41 insertions(+), 9 deletions(-) diff --git a/sqitch/deploy/profile-meta.sql b/sqitch/deploy/profile-meta.sql index 19fe128..99ce581 100644 --- a/sqitch/deploy/profile-meta.sql +++ b/sqitch/deploy/profile-meta.sql @@ -4,6 +4,7 @@ BEGIN; CREATE TABLE IF NOT EXISTS data.profile_meta ( + name TEXT, steam64_id TEXT, is_collector BOOL, is_leetify_staff BOOL, diff --git a/sqitch/verify/profile-meta.sql b/sqitch/verify/profile-meta.sql index 67aa1b4..29bf0a4 100644 --- a/sqitch/verify/profile-meta.sql +++ b/sqitch/verify/profile-meta.sql @@ -2,7 +2,7 @@ BEGIN; -SELECT steam64_id, is_collector, is_leetify_staff, is_pro_plan, +SELECT name, steam64_id, is_collector, is_leetify_staff, is_pro_plan, leetify_user_id, faceit_nickname FROM data.profile_meta WHERE FALSE; diff --git a/src/extract.py b/src/extract.py index afcf639..831ccca 100644 --- a/src/extract.py +++ b/src/extract.py @@ -48,7 +48,7 @@ def extract_profile_meta(id, api=Leetify(), conn=None): if not conn: conn = connect() - cols = [ + cols_api = [ "name", "steam64Id", "isCollector", @@ -57,14 +57,24 @@ def extract_profile_meta(id, api=Leetify(), conn=None): "leetifyUserId", "faceitNickname", ] + cols_db = [ + "name", + "steam64_id", + "is_collector", + "is_leetify_staff", + "is_pro_plan", + "leetify_user_id", + "faceit_nickname", + ] + profile = api.get_profile(id) meta = meta_from_profile(profile) - vals = vals_in_order(meta, cols) + vals = vals_in_order(meta, cols_api) with conn.cursor() as curs: sql = f""" - INSERT INTO data.profile_meta ({', '.join(cols)}) - VALUES ({', '.join(['%s'] * len(vals))}); + INSERT INTO data.profile_meta ({', '.join(cols_db)}) + VALUES ({', '.join(['%s'] * len(cols_db))}); """ curs.execute(sql, vals) conn.commit() @@ -74,7 +84,7 @@ def extract_profile_games(profile, conn=None): if not conn: conn = connect() - cols = [ + cols_api = [ "leetifyUserId", "ctLeetifyRating", "ctLeetifyRatingRounds", @@ -95,14 +105,35 @@ def extract_profile_games(profile, conn=None): "partySize", ] + cols_db = [ + "leetify_user_id", + "ct_Leetify_rating", + "ct_Leetify_rating_rounds", + "data_source", + "elo", + "game_finished_at", + "game_id", + "is_cs2", + "map_name", + "match_result", + "scores", + "skill_level", + "t_leetify_rating", + "t_leetify_rating_rounds", + "deaths", + "has_banned_player", + "kills", + "party_size", + ] + games = games_from_profile(profile) - games = map(lambda game: vals_in_order(game, cols), games) + games = map(lambda game: vals_in_order(game, cols_api), games) with conn.cursor() as curs: curs.executemany( f""" - INSERT into data.profile_game ({', '.join(cols)}) - VALUES ({', '.join(['%s'] * len(cols))}); + INSERT into data.profile_game ({', '.join(cols_db)}) + VALUES ({', '.join(['%s'] * len(cols_db))}); """, games, )