добавлены Судьи, поправлены Ход игры и События игры на офлайн матч
This commit is contained in:
45
visual.py
45
visual.py
@@ -615,9 +615,7 @@ if isinstance(cached_game_online, dict):
|
||||
col5_2.metric("Fouls", foulsB)
|
||||
|
||||
|
||||
if isinstance(cached_game_online, dict) and (
|
||||
cached_game_online.get("plays") or []
|
||||
):
|
||||
if isinstance(cached_game_online, dict) and (cached_game_online.get("plays") or []):
|
||||
col_1_col = [f"col_1_{i}" for i in range(1, period_max + 1)]
|
||||
col_2_col = [f"col_2_{i}" for i in range(1, period_max + 1)]
|
||||
count_q = 0
|
||||
@@ -1868,8 +1866,7 @@ try:
|
||||
except (FileNotFoundError, json.JSONDecodeError):
|
||||
play_type_id = []
|
||||
|
||||
teams_section = ((cached_game_online or {}).get("result") or {}).get("teams") or {}
|
||||
|
||||
teams_section = cached_game_online.get("teams") or {}
|
||||
# Если teams_section — список (например, [{"starts": [...]}, {...}])
|
||||
if isinstance(teams_section, list):
|
||||
if len(teams_section) >= 2:
|
||||
@@ -1882,6 +1879,7 @@ if isinstance(teams_section, list):
|
||||
else:
|
||||
starts1 = []
|
||||
starts2 = []
|
||||
|
||||
# Если teams_section — словарь (обычно {"1": {...}, "2": {...}})
|
||||
elif isinstance(teams_section, dict):
|
||||
starts1 = (teams_section.get(1) or teams_section.get("1") or {}).get("starts") or []
|
||||
@@ -1927,8 +1925,43 @@ def get_event_time(row):
|
||||
return None
|
||||
|
||||
|
||||
teams_section = cached_game_online.get("teams") or {}
|
||||
|
||||
# Если teams_section — список (например, [{"starts": [...]}, {...}])
|
||||
if isinstance(teams_section, list):
|
||||
if len(teams_section) >= 2:
|
||||
starts1 = next(
|
||||
(t.get("starts") for t in teams_section if t["teamNumber"] == 1), None
|
||||
)
|
||||
starts2 = next(
|
||||
(t.get("starts") for t in teams_section if t["teamNumber"] == 2), None
|
||||
)
|
||||
else:
|
||||
starts1 = []
|
||||
starts2 = []
|
||||
# Если teams_section — словарь (обычно {"1": {...}, "2": {...}})
|
||||
elif isinstance(teams_section, dict):
|
||||
starts1 = (teams_section.get(1) or teams_section.get("1") or {}).get("starts") or []
|
||||
starts2 = (teams_section.get(2) or teams_section.get("2") or {}).get("starts") or []
|
||||
else:
|
||||
starts1 = []
|
||||
starts2 = []
|
||||
|
||||
teams_temp = sorted(
|
||||
[x for x in starts1 if isinstance(x, dict)], key=lambda x: x.get("playerNumber", 0)
|
||||
) + sorted(
|
||||
[x for x in starts2 if isinstance(x, dict)], key=lambda x: x.get("playerNumber", 0)
|
||||
)
|
||||
|
||||
list_fullname = [None] + [
|
||||
f"({x.get('displayNumber')}) {x.get('firstName','')} {x.get('lastName','')}".strip()
|
||||
for x in teams_temp
|
||||
if x.get("startRole") == "Player"
|
||||
]
|
||||
|
||||
|
||||
with tab_pbp:
|
||||
plays = ((cached_game_online or {}).get("result") or {}).get("plays") or []
|
||||
# plays = ((cached_game_online or {}).get("result") or {}).get("plays") or []
|
||||
if plays:
|
||||
temp_data_pbp = pd.DataFrame(plays)
|
||||
col1_pbp, col2_pbp = tab_pbp.columns((3, 4))
|
||||
|
||||
Reference in New Issue
Block a user