def parse_detail_page(soup):
    """
    read the week-by-week player data from the parsed html
    return a dict keyed by gameweek.
    """
    player_detail = []
    for row in soup.find_all("tr", attrs={"class": "ng-scope"}):
        gameweek_dict = {}
        gameweek_dict["gameweek"] = row.find(
            "td", attrs={"data-ng-bind": "item.gameWeek"}
        ).text
        gameweek_dict["opponent"] = row.find(
            "td", attrs={"data-ng-bind": "item.opponent"}
        ).text
        gameweek_dict["points"] = row.find(
            "td", attrs={"data-ng-bind": "item.points"}
        ).text
        gameweek_dict["goals"] = row.find(
            "td", attrs={"data-ng-bind": "item.goals"}
        ).text
        gameweek_dict["assists"] = row.find(
            "td", attrs={"data-ng-bind": "item.assists"}
        ).text
        gameweek_dict["minutes"] = row.find(
            "td", attrs={"data-ng-bind": "item.minutes"}
        ).text
        gameweek_dict["bonus"] = row.find("td", attrs={"data-ng-bind": "item.bps"}).text
        gameweek_dict["conceded"] = row.find(
            "td", attrs={"data-ng-bind": "item.goalsConceded"}
        ).text
        gameweek_dict["own_goals"] = row.find(
            "td", attrs={"data-ng-bind": "item.ownGoals"}
        ).text
        player_detail.append(gameweek_dict)
    return player_detail