💰 Betting Odds
Home
3.25
Draw
3.4
Away
2.15
🔥 Home Form
- without_clean_sheet5
- more_than_25_goals4/5
- both_teams_scoring4/5
- first_to_concede4/5
- less_than_45_cards8/10
🔥 Away Form
- no_losses4
- no_goals_conceded3
- less_than_25_goals8/10
- less_than_45_cards7/7
- less_than_105_corners9/10
🥇 Head-to-Head
- no_losses4
- less_than_105_corners4/5
⚽ Home Goal Distribution
{'scored': {'total': 43, 'penalty': 4, 'free_kick': 1, 'header': 5, 'left_foot': 13, 'right_foot': 25, 'inside_box': 39, 'outside_box': 4, 'big_chances': 73, 'big_chances_missed': 37, 'shots': 368, 'shots_on_target': 132, 'corners_won': 144, 'yellow_cards': 53, 'red_cards': 3, 'fouls': 428, 'offsides': 91, 'avg_possession': 45.470588235294, 'pass_accuracy': 80.356237781479, 'matches_played': 34}, 'conceded': {'total': 44, 'penalty': 2, 'clean_sheets': 9, 'shots': 481, 'shots_on_target': 182, 'corners': 209, 'big_chances': 85}}
⚽ Away Goal Distribution
{'scored': {'total': 36, 'penalty': 4, 'free_kick': 2, 'header': 2, 'left_foot': 10, 'right_foot': 24, 'inside_box': 31, 'outside_box': 5, 'big_chances': 63, 'big_chances_missed': 40, 'shots': 455, 'shots_on_target': 159, 'corners_won': 177, 'yellow_cards': 52, 'red_cards': 4, 'fouls': 405, 'offsides': 57, 'avg_possession': 45.235294117647, 'pass_accuracy': 81.42699521883, 'matches_played': 34}, 'conceded': {'total': 34, 'penalty': 4, 'clean_sheets': 15, 'shots': 377, 'shots_on_target': 120, 'corners': 127, 'big_chances': 59}}
⚽ Scorers
[{'name': 'Nicolas de Préville', 'minute': 55, 'team': 'away', 'type': 'penalty'}, {'name': 'Junior Olaitan', 'minute': 51, 'team': 'home', 'type': 'penalty'}, {'name': 'Eddy Sylvestre', 'minute': 35, 'team': 'home', 'type': 'goal'}, {'name': 'Jessy Benet', 'minute': 28, 'team': 'home', 'type': 'goal'}]
💰 Betting Markets
{'full_time': {'choices': {'1': {'odds': 3.25, 'won': True}, 'X': {'odds': 3.4, 'won': False}, '2': {'odds': 2.15, 'won': False}}}, 'double_chance': {'choices': {'1X': {'odds': 1.67, 'won': True}, 'X2': {'odds': 1.33, 'won': False}, '12': {'odds': 1.3, 'won': True}}}, 'first_half': {'choices': {'1': {'odds': 3.75, 'won': True}, 'X': {'odds': 2.2, 'won': False}, '2': {'odds': 2.75, 'won': False}}}, 'draw_no_bet': {'choices': {'1': {'odds': 2.38, 'won': True}, '2': {'odds': 1.53, 'won': False}}}, 'both_teams_to_score': {'choices': {'yes': {'odds': 1.73, 'won': True}, 'no': {'odds': 2.0, 'won': False}}}, 'corners_2_way': {'line': 2.0, 'over': {'odds': 2.0, 'won': True}, 'under': {'odds': 1.73, 'won': False}}, 'first_team_to_score': {'choices': {'home': {'odds': 2.3, 'won': True}, 'no_goal': {'odds': 11.0, 'won': False}, 'away': {'odds': 1.67, 'won': False}}}}
📄 Raw Data
{'match_id': '120548', 'match_info': {'country': 'France', 'league': 'Ligue 2', 'round': 'Round 33', 'date': '2025-05-02', 'time': '18:00', 'status': 'Finished', 'home_team': 'Grenoble Foot 38', 'away_team': 'Troyes', 'final_score': '3 - 1', 'half_time_score': '2 - 0', 'scorers': [{'name': 'Nicolas de Préville', 'minute': 55, 'team': 'away', 'type': 'penalty'}, {'name': 'Junior Olaitan', 'minute': 51, 'team': 'home', 'type': 'penalty'}, {'name': 'Eddy Sylvestre', 'minute': 35, 'team': 'home', 'type': 'goal'}, {'name': 'Jessy Benet', 'minute': 28, 'team': 'home', 'type': 'goal'}]}, 'betting_markets': {'full_time': {'choices': {'1': {'odds': 3.25, 'won': True}, 'X': {'odds': 3.4, 'won': False}, '2': {'odds': 2.15, 'won': False}}}, 'double_chance': {'choices': {'1X': {'odds': 1.67, 'won': True}, 'X2': {'odds': 1.33, 'won': False}, '12': {'odds': 1.3, 'won': True}}}, 'first_half': {'choices': {'1': {'odds': 3.75, 'won': True}, 'X': {'odds': 2.2, 'won': False}, '2': {'odds': 2.75, 'won': False}}}, 'draw_no_bet': {'choices': {'1': {'odds': 2.38, 'won': True}, '2': {'odds': 1.53, 'won': False}}}, 'both_teams_to_score': {'choices': {'yes': {'odds': 1.73, 'won': True}, 'no': {'odds': 2.0, 'won': False}}}, 'corners_2_way': {'line': 2.0, 'over': {'odds': 2.0, 'won': True}, 'under': {'odds': 1.73, 'won': False}}, 'first_team_to_score': {'choices': {'home': {'odds': 2.3, 'won': True}, 'no_goal': {'odds': 11.0, 'won': False}, 'away': {'odds': 1.67, 'won': False}}}}, 'streaks': {'home_team': {'without_clean_sheet': '5', 'more_than_25_goals': '4/5', 'both_teams_scoring': '4/5', 'first_to_concede': '4/5', 'less_than_45_cards': '8/10'}, 'away_team': {'no_losses': '4', 'no_goals_conceded': '3', 'less_than_25_goals': '8/10', 'less_than_45_cards': '7/7', 'less_than_105_corners': '9/10'}, 'h2h': {'no_losses': '4', 'less_than_105_corners': '4/5'}}, 'goal_distribution': {'home_team': {'scored': {'total': 43, 'penalty': 4, 'free_kick': 1, 'header': 5, 'left_foot': 13, 'right_foot': 25, 'inside_box': 39, 'outside_box': 4, 'big_chances': 73, 'big_chances_missed': 37, 'shots': 368, 'shots_on_target': 132, 'corners_won': 144, 'yellow_cards': 53, 'red_cards': 3, 'fouls': 428, 'offsides': 91, 'avg_possession': 45.470588235294, 'pass_accuracy': 80.356237781479, 'matches_played': 34}, 'conceded': {'total': 44, 'penalty': 2, 'clean_sheets': 9, 'shots': 481, 'shots_on_target': 182, 'corners': 209, 'big_chances': 85}}, 'away_team': {'scored': {'total': 36, 'penalty': 4, 'free_kick': 2, 'header': 2, 'left_foot': 10, 'right_foot': 24, 'inside_box': 31, 'outside_box': 5, 'big_chances': 63, 'big_chances_missed': 40, 'shots': 455, 'shots_on_target': 159, 'corners_won': 177, 'yellow_cards': 52, 'red_cards': 4, 'fouls': 405, 'offsides': 57, 'avg_possession': 45.235294117647, 'pass_accuracy': 81.42699521883, 'matches_played': 34}, 'conceded': {'total': 34, 'penalty': 4, 'clean_sheets': 15, 'shots': 377, 'shots_on_target': 120, 'corners': 127, 'big_chances': 59}}}, 'h2h_history': [{'date': '2026-05-09', 'score': '1-0', 'home': 'Grenoble Foot 38', 'away': 'Troyes', 'competition': 'Ligue 2'}, {'date': '2025-08-09', 'score': '2-1', 'home': 'Troyes', 'away': 'Grenoble Foot 38', 'competition': 'Ligue 2'}, {'date': '2025-07-19', 'score': '0-5', 'home': 'Grenoble Foot 38', 'away': 'Troyes', 'competition': 'Club Friendly Games'}, {'date': '2025-05-02', 'score': '3-1', 'home': 'Grenoble Foot 38', 'away': 'Troyes', 'competition': 'Ligue 2'}, {'date': '2024-11-22', 'score': '0-0', 'home': 'Troyes', 'away': 'Grenoble Foot 38', 'competition': 'Ligue 2'}]}