Skip to content

Instantly share code, notes, and snippets.

@picknscroll
Last active September 12, 2017 06:10
Show Gist options
  • Save picknscroll/3c44b44ddf0c4d0ebf5fcd0ca37dd7b2 to your computer and use it in GitHub Desktop.
Save picknscroll/3c44b44ddf0c4d0ebf5fcd0ca37dd7b2 to your computer and use it in GitHub Desktop.
def scrape_game_data(game_url):
"""
Scrape data from a game into a dictionary mapping stat categories to booleans
indicating if the given team won the particular category
"""
raw_team_stats = get_raw_game_data(game_url)
teams = raw_team_stats.keys()
stats = raw_team_stats.values()
parsed_team_stats = defaultdict(dict)
for cat in stats[0].keys():
if cat == 'tov' or cat == 'tov_pct':
if stats[0][cat] > stats[1][cat]:
parsed_team_stats[teams[0]][write_cat] = 0
parsed_team_stats[teams[1]][write_cat] = 1
elif stats[0][cat] < stats[1][cat]:
parsed_team_stats[teams[0]][write_cat] = 1
parsed_team_stats[teams[1]][write_cat] = 0
else:
parsed_team_stats[teams[0]][write_cat] = 0.5
parsed_team_stats[teams[1]][write_cat] = 0.5
else:
if stats[0][cat] > stats[1][cat]:
parsed_team_stats[teams[0]][write_cat] = 1
parsed_team_stats[teams[1]][write_cat] = 0
elif stats[0][cat] < stats[1][cat]:
parsed_team_stats[teams[0]][write_cat] = 0
parsed_team_stats[teams[1]][write_cat] = 1
else:
parsed_team_stats[teams[0]][write_cat] = 0.5
parsed_team_stats[teams[1]][write_cat] = 0.5
return parsed_team_stats
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment