feat: /api/v2/analiza/* endpoints - sport analytics backend
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Dohvaća sezone i utakmice za HNS igrača preko Playwrighta."""
|
||||
import json, sys, time
|
||||
from playwright.sync_api import sync_playwright
|
||||
|
||||
if len(sys.argv) < 2:
|
||||
print("Koristi: hns_player_stats.py <hns_igrac_id>")
|
||||
sys.exit(1)
|
||||
|
||||
hns_id = sys.argv[1]
|
||||
url = f"https://semafor.hns.family/igraci/{hns_id}/"
|
||||
|
||||
with sync_playwright() as p:
|
||||
browser = p.chromium.launch(headless=True)
|
||||
page = browser.new_page()
|
||||
page.goto(url, wait_until='networkidle', timeout=30000)
|
||||
# dohvaćanje __NEXT_DATA__
|
||||
next_data = page.inner_text('#__NEXT_DATA__')
|
||||
data = json.loads(next_data)
|
||||
browser.close()
|
||||
|
||||
# izvlačenje sezona i utakmica
|
||||
props = data['props']['pageProps']
|
||||
player = props.get('player', {})
|
||||
seasons = player.get('seasons', [])
|
||||
matches = props.get('matches', [])
|
||||
|
||||
print(f"Igrač: {player.get('name', '')} {player.get('surname', '')}")
|
||||
print(f"Sezona: {len(seasons)}")
|
||||
for s in seasons:
|
||||
print(f" {s.get('season','?')} {s.get('competition','')} {s.get('clubName','')} "
|
||||
f"N:{s.get('apps',0)} G:{s.get('goals',0)} A:{s.get('assists',0)}")
|
||||
|
||||
print(f"\nUtakmica: {len(matches)}")
|
||||
for m in matches[:5]: # prvih 5
|
||||
print(f" {m.get('date','')} {m.get('homeTeam','')} vs {m.get('awayTeam','')} {m.get('result','')}")
|
||||
Reference in New Issue
Block a user