def import_scores(table, game: Game, team: Team): table_rows = table['data'] for table_row in table_rows[2:]: row_data = [cell['text'] for cell in table_row] player_number: str = row_data[0] player_name: str = row_data[1] if not player_number and not player_name: return if player_number in ('A', 'B', 'C', 'D'): LOGGER.debug('SKIPPING Score (coach): %s - %s', player_number, player_name) return if not player_number: LOGGER.warning('SKIPPING Score (no player number): %s', player_name) return if not player_name: LOGGER.warning('SKIPPING Score (no player name): %s', player_number) return try: int(player_number) except ValueError as err: LOGGER.exception( 'invalid Score (invalid player number): %s - %s\n%s', player_number, player_name, err) return player = Player(name=player_name, team=team) score = parse_score(player, game, row_data) logic.add_score(score)
def add_scores(self, table, game, team): table_rows = table['data'] for table_row in table_rows[2:]: row_data = [cell['text'] for cell in table_row] player_name = row_data[1] if not player_name: return player_number = row_data[0] if player_number in ('A', 'B', 'C', 'D'): return if player_number == "": self.stdout.write( 'SKIPPING Score (no player number): {}'.format( player_name)) return # player_year_of_birth = row_data[2] try: goals = int(row_data[5]) except ValueError: goals = 0 penalty_tries, penalty_goals = parsing.parse_penalty_data( row_data[6]) warning_time = parsing.parse_game_time(row_data[7]) first_suspension_time = parsing.parse_game_time(row_data[8]) second_suspension_time = parsing.parse_game_time(row_data[9]) third_suspension_time = parsing.parse_game_time(row_data[10]) disqualification_time = parsing.parse_game_time(row_data[11]) report_time = parsing.parse_game_time(row_data[12]) team_suspension_time = parsing.parse_game_time(row_data[13]) logic.add_score(game, team, player_name, player_number, goals, penalty_goals, penalty_tries, warning_time, first_suspension_time, second_suspension_time, third_suspension_time, disqualification_time, report_time, team_suspension_time, self.stdout.write)
def _add_scores(game: Game, team: Team, scores_data: Dict[str, Dict[str, Any]]): for name, score_data in scores_data.items(): player = Player(name=name, team=team) sco = Score(player=player, game=game, **score_data) logic.add_score(score=sco)
def _add_scores(self, game, team, data): for score in data: logic.add_score(*(game, team) + score, log_fun=self.stdout.write)