💰 Betting Odds
Home
3.9
Draw
3.4
Away
2.0
🔥 Home Form
- less_than_25_goals6/7
- first_to_concede5/6
- less_than_45_cards10/10
🔥 Away Form
- without_clean_sheet3
- more_than_45_cards4/5
🥇 Head-to-Head
- first_to_score8/10
- less_than_105_corners7/9
⚽ Home Goal Distribution
{'scored': {'total': 29, 'penalty': 2, 'free_kick': 0, 'header': 4, 'left_foot': 3, 'right_foot': 21, 'inside_box': 24, 'outside_box': 4, 'big_chances': 57, 'big_chances_missed': 39, 'shots': 373, 'shots_on_target': 109, 'corners_won': 122, 'yellow_cards': 66, 'red_cards': 2, 'fouls': 421, 'offsides': 42, 'avg_possession': 42.030303030303, 'pass_accuracy': 79.025957114333, 'matches_played': 33}, 'conceded': {'total': 52, 'penalty': 5, 'clean_sheets': 7, 'shots': 445, 'shots_on_target': 160, 'corners': 188, 'big_chances': 90}}
⚽ Away Goal Distribution
{'scored': {'total': 58, 'penalty': 5, 'free_kick': 0, 'header': 10, 'left_foot': 19, 'right_foot': 24, 'inside_box': 51, 'outside_box': 4, 'big_chances': 78, 'big_chances_missed': 38, 'shots': 454, 'shots_on_target': 163, 'corners_won': 193, 'yellow_cards': 56, 'red_cards': 4, 'fouls': 411, 'offsides': 80, 'avg_possession': 53.454545454545, 'pass_accuracy': 84.714993017646, 'matches_played': 33}, 'conceded': {'total': 47, 'penalty': 4, 'clean_sheets': 10, 'shots': 432, 'shots_on_target': 135, 'corners': 152, 'big_chances': 96}}
⚽ Scorers
[{'name': 'Youssef El Arabi', 'minute': 90, 'team': 'home', 'type': 'goal'}, {'name': 'Junior Mwanga', 'minute': 64, 'team': 'home', 'type': 'goal'}, {'name': 'Esteban Lepaul', 'minute': 35, 'team': 'away', 'type': 'goal'}, {'name': 'Ludovic Blas', 'minute': 29, 'team': 'away', 'type': 'penalty'}]
💰 Betting Markets
{'full_time': {'choices': {'1': {'odds': 3.9, 'won': False}, 'X': {'odds': 3.4, 'won': True}, '2': {'odds': 2.0, 'won': False}}}, 'double_chance': {'choices': {'1X': {'odds': 1.8, 'won': True}, 'X2': {'odds': 1.22, 'won': True}, '12': {'odds': 1.3, 'won': False}}}, 'first_half': {'choices': {'1': {'odds': 2.6, 'won': False}, 'X': {'odds': 2.2, 'won': False}}}, 'draw_no_bet': {'choices': {'1': {'odds': 2.75, 'won': False}, '2': {'odds': 1.4, 'won': False}}}, 'both_teams_to_score': {'choices': {'yes': {'odds': 1.8, 'won': True}, 'no': {'odds': 1.95, 'won': False}}}, 'corners_2_way': {'line': 2.0, 'over': {'odds': 1.91, 'won': True}, 'under': {'odds': 1.8, 'won': False}}, 'first_team_to_score': {'choices': {'home': {'odds': 1.67, 'won': False}, 'no_goal': {'odds': 9.5, 'won': False}}}}
📄 Raw Data
{'match_id': '154631', 'match_info': {'country': 'France', 'league': 'Ligue 1', 'round': 'Round 5', 'date': '2025-09-21', 'time': '15:00', 'status': 'Finished', 'home_team': 'Nantes', 'away_team': 'Stade Rennais', 'final_score': '2 - 2', 'half_time_score': '0 - 2', 'scorers': [{'name': 'Youssef El Arabi', 'minute': 90, 'team': 'home', 'type': 'goal'}, {'name': 'Junior Mwanga', 'minute': 64, 'team': 'home', 'type': 'goal'}, {'name': 'Esteban Lepaul', 'minute': 35, 'team': 'away', 'type': 'goal'}, {'name': 'Ludovic Blas', 'minute': 29, 'team': 'away', 'type': 'penalty'}]}, 'betting_markets': {'full_time': {'choices': {'1': {'odds': 3.9, 'won': False}, 'X': {'odds': 3.4, 'won': True}, '2': {'odds': 2.0, 'won': False}}}, 'double_chance': {'choices': {'1X': {'odds': 1.8, 'won': True}, 'X2': {'odds': 1.22, 'won': True}, '12': {'odds': 1.3, 'won': False}}}, 'first_half': {'choices': {'1': {'odds': 2.6, 'won': False}, 'X': {'odds': 2.2, 'won': False}}}, 'draw_no_bet': {'choices': {'1': {'odds': 2.75, 'won': False}, '2': {'odds': 1.4, 'won': False}}}, 'both_teams_to_score': {'choices': {'yes': {'odds': 1.8, 'won': True}, 'no': {'odds': 1.95, 'won': False}}}, 'corners_2_way': {'line': 2.0, 'over': {'odds': 1.91, 'won': True}, 'under': {'odds': 1.8, 'won': False}}, 'first_team_to_score': {'choices': {'home': {'odds': 1.67, 'won': False}, 'no_goal': {'odds': 9.5, 'won': False}}}}, 'streaks': {'home_team': {'less_than_25_goals': '6/7', 'first_to_concede': '5/6', 'less_than_45_cards': '10/10'}, 'away_team': {'without_clean_sheet': '3', 'more_than_45_cards': '4/5'}, 'h2h': {'first_to_score': '8/10', 'less_than_105_corners': '7/9'}}, 'goal_distribution': {'home_team': {'scored': {'total': 29, 'penalty': 2, 'free_kick': 0, 'header': 4, 'left_foot': 3, 'right_foot': 21, 'inside_box': 24, 'outside_box': 4, 'big_chances': 57, 'big_chances_missed': 39, 'shots': 373, 'shots_on_target': 109, 'corners_won': 122, 'yellow_cards': 66, 'red_cards': 2, 'fouls': 421, 'offsides': 42, 'avg_possession': 42.030303030303, 'pass_accuracy': 79.025957114333, 'matches_played': 33}, 'conceded': {'total': 52, 'penalty': 5, 'clean_sheets': 7, 'shots': 445, 'shots_on_target': 160, 'corners': 188, 'big_chances': 90}}, 'away_team': {'scored': {'total': 58, 'penalty': 5, 'free_kick': 0, 'header': 10, 'left_foot': 19, 'right_foot': 24, 'inside_box': 51, 'outside_box': 4, 'big_chances': 78, 'big_chances_missed': 38, 'shots': 454, 'shots_on_target': 163, 'corners_won': 193, 'yellow_cards': 56, 'red_cards': 4, 'fouls': 411, 'offsides': 80, 'avg_possession': 53.454545454545, 'pass_accuracy': 84.714993017646, 'matches_played': 33}, 'conceded': {'total': 47, 'penalty': 4, 'clean_sheets': 10, 'shots': 432, 'shots_on_target': 135, 'corners': 152, 'big_chances': 96}}}, 'h2h_history': [{'date': '2026-04-26', 'score': '2-1', 'home': 'Stade Rennais', 'away': 'Nantes', 'competition': 'Ligue 1'}, {'date': '2025-09-20', 'score': '2-2', 'home': 'Nantes', 'away': 'Stade Rennais', 'competition': 'Ligue 1'}, {'date': '2025-07-26', 'score': '2-3', 'home': 'Nantes', 'away': 'Stade Rennais', 'competition': 'Club Friendly Games'}, {'date': '2025-04-18', 'score': '2-1', 'home': 'Stade Rennais', 'away': 'Nantes', 'competition': 'Ligue 1'}, {'date': '2024-12-08', 'score': '1-0', 'home': 'Nantes', 'away': 'Stade Rennais', 'competition': 'Ligue 1'}]}