def main(years: Optional[int] = None): keys = ["id", "name", "cleanName", "country", "competition_id"] with open("credentials/footystats.json") as f: key = json.load(f)["key"] fs = FootyStats(key) season_ids = fs.chosen_season_id(years) sql_create = open("sql/footystats/tables/teams/create.sql").read() sql_insert = open("sql/footystats/tables/teams/insert.sql").read() conn = mysql.connector.connect(user="******", password="******", host="127.0.0.1", database="footystats") conn.cursor().execute(sql_create) pbar = tqdm(season_ids) pbar.set_description("Ingesting team data") for season_id in pbar: data = pipeline.extract(fs.teams, season_id) data = pipeline.transform(data, transform, keys) pipeline.load(data, sql_insert, conn) conn.commit() conn.close()
def main(years: Optional[int] = None): keys = [ "id", "homeID", "awayID", "status", "homeGoals", "awayGoals", "homeGoalCount", "awayGoalCount", "date_unix", "team_a_xg", "team_b_xg", "goal_timings_recorded", "competition_id", "is_home_away", "is_xg", "home_adj", "away_adj", "home_avg", "away_avg", ] with open("credentials/footystats.json") as f: key = json.load(f)["key"] fs = FootyStats(key) season_ids = fs.chosen_season_id(years) sql_create = open("sql/footystats/tables/matches/create.sql").read() sql_insert = open("sql/footystats/tables/matches/insert.sql").read() conn = mysql.connector.connect( user="******", password="******", host="127.0.0.1", database="footystats" ) conn.cursor().execute(sql_create) pbar = tqdm(season_ids) pbar.set_description("Ingesting match data") for season_id in pbar: data = pipeline.extract(fs.matches, season_id) data = pipeline.transform(data, transform, keys) pipeline.load(data, sql_insert, conn) conn.commit() conn.close()
def main(years: Optional[int] = None): keys = [ "id", "name", "country", "status", "format", "division", "starting_year", "ending_year", "clubNum", "season", "totalMatches", "matchesCompleted", "canceledMatchesNum", "game_week", "total_game_week", "league_name", ] with open("credentials/footystats.json") as f: key = json.load(f)["key"] fs = FootyStats(key) season_ids = fs.chosen_season_id(years) sql_create = open("sql/footystats/tables/season/create.sql").read() sql_insert = open("sql/footystats/tables/season/insert.sql").read() conn = mysql.connector.connect(user="******", password="******", host="127.0.0.1", database="footystats") conn.cursor().execute(sql_create) pbar = tqdm(season_ids) pbar.set_description("Ingesting season data") for season_id in pbar: data = pipeline.extract(fs.season, season_id) data = pipeline.transform(data, transform, keys) pipeline.load(data, sql_insert, conn) conn.commit() conn.close()
def test_teams_pl_1920(): fs = FootyStats() teams = fs.teams(2012) assert teams[0]["cleanName"] == "Arsenal"
def test_teams(): fs = FootyStats() season_id = 2012 teams = fs.teams(season_id) assert teams[0]["competition_id"] == season_id
def test_league_list(): fs = FootyStats() league_list = fs.league_list() assert len(league_list) > 0
def test_matches(): fs = FootyStats() season_id = 2012 matches = fs.matches(season_id) assert matches[0]["competition_id"] == season_id
def test_season(): fs = FootyStats() season_id = 2012 season = fs.season(season_id) assert season["id"] == season_id
def test_chosen_season_id(): with open("credentials/footystats.json") as f: key = json.load(f)["key"] fs = FootyStats(key) season_ids = fs.chosen_season_id() assert 6639 in season_ids
def test_league_list_chosen_leagues_only(): with open("credentials/footystats.json") as f: key = json.load(f)["key"] fs = FootyStats(key) league_list = fs.league_list(chosen_leagues_only=True) assert "country" not in league_list[0]