inoutro commited on
Commit
b1e0b64
ยท
1 Parent(s): 6bd4d01

league id input change

Browse files
Files changed (1) hide show
  1. app.py +32 -8
app.py CHANGED
@@ -4,14 +4,23 @@ import requests
4
  # Sleeper API ์—”๋“œํฌ์ธํŠธ
5
  BASE_URL = "https://api.sleeper.app/v1"
6
 
 
 
 
 
 
 
 
 
 
 
7
  # ์„ ์ˆ˜ ์ด๋ฆ„์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ•จ์ˆ˜
8
  def fetch_players():
9
  url = f"{BASE_URL}/players/nba"
10
  response = requests.get(url)
11
  if response.status_code == 200:
12
  players_data = response.json()
13
- # ์„ ์ˆ˜ ID์™€ ์ด๋ฆ„์˜ ๋งคํ•‘ ํ…Œ์ด๋ธ” ์ƒ์„ฑ
14
- return {player_id: data["full_name"] for player_id, data in players_data.items() if "full_name" in data.keys()}
15
  else:
16
  return {}
17
 
@@ -43,19 +52,34 @@ def get_weekly_matchup(league_id, week):
43
  return results
44
 
45
  # Gradio ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜
46
- def display_weekly_matchup(league_id, week):
47
- return get_weekly_matchup(league_id, week)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
 
49
  # Gradio ์ธํ„ฐํŽ˜์ด์Šค ์„ค์ •
50
  iface = gr.Interface(
51
  fn=display_weekly_matchup,
52
  inputs=[
53
- gr.Textbox(label="๋ฆฌ๊ทธ ID๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”"),
54
- gr.Number(label="์ฃผ์ฐจ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š” (์˜ˆ: 1)")
55
  ],
56
  outputs=gr.JSON(),
57
- title="ํŒํƒ€์ง€ NBA ์ฃผ์ฐจ๋ณ„ ๋งค์น˜์—… ์ •๋ณด",
58
- description="Sleeper API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ๋ฆฌ๊ทธ์˜ ์ฃผ์ฐจ๋ณ„ ๋งค์น˜์—… ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๊ณ , ์„ ์ˆ˜ ์ด๋ฆ„์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค."
59
  )
60
 
61
  if __name__ == "__main__":
 
4
  # Sleeper API ์—”๋“œํฌ์ธํŠธ
5
  BASE_URL = "https://api.sleeper.app/v1"
6
 
7
+ # ๋ฆฌ๊ทธ ์ด๋ฆ„์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•œ ํ•จ์ˆ˜
8
+ def fetch_league_name(league_id):
9
+ url = f"{BASE_URL}/league/{league_id}"
10
+ response = requests.get(url)
11
+ if response.status_code == 200:
12
+ league_data = response.json()
13
+ return league_data.get("name", f"๋ฆฌ๊ทธ ์ด๋ฆ„ ์—†์Œ ({league_id})")
14
+ else:
15
+ return f"๋ฆฌ๊ทธ ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ ์‹คํŒจ ({league_id})"
16
+
17
  # ์„ ์ˆ˜ ์ด๋ฆ„์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ•จ์ˆ˜
18
  def fetch_players():
19
  url = f"{BASE_URL}/players/nba"
20
  response = requests.get(url)
21
  if response.status_code == 200:
22
  players_data = response.json()
23
+ return {player_id: data["full_name"] for player_id, data in players_data.items()}
 
24
  else:
25
  return {}
26
 
 
52
  return results
53
 
54
  # Gradio ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜
55
+ def display_weekly_matchup(league_name, week):
56
+ league_ids = {
57
+ fetch_league_name("1149290874371846144"): "1149290874371846144",
58
+ fetch_league_name("1083634148067074048"): "1083634148067074048",
59
+ }
60
+ league_id = league_ids.get(league_name)
61
+ if not league_id:
62
+ return {"error": "์œ ํšจํ•˜์ง€ ์•Š์€ ๋ฆฌ๊ทธ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค."}
63
+
64
+ return get_weekly_matchup(league_id, int(week))
65
+
66
+ # ๋ฆฌ๊ทธ ์ด๋ฆ„์„ ๋“œ๋กญ๋‹ค์šด์— ๋™์ ์œผ๋กœ ์ถ”๊ฐ€
67
+ def get_league_choices():
68
+ return [
69
+ fetch_league_name("1149290874371846144"),
70
+ fetch_league_name("1083634148067074048"),
71
+ ]
72
 
73
  # Gradio ์ธํ„ฐํŽ˜์ด์Šค ์„ค์ •
74
  iface = gr.Interface(
75
  fn=display_weekly_matchup,
76
  inputs=[
77
+ gr.Dropdown(choices=get_league_choices(), label="๋ฆฌ๊ทธ ์„ ํƒ"),
78
+ gr.Number(label="์ฃผ์ฐจ ์ž…๋ ฅ (์ˆซ์ž)"),
79
  ],
80
  outputs=gr.JSON(),
81
+ title="ํŒํƒ€์ง€ NBA ๋ฆฌ๊ทธ ๋งค์น˜์—… ์ •๋ณด",
82
+ description="Sleeper API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌ๊ทธ ์ด๋ฆ„๊ณผ ์ฃผ์ฐจ๋ณ„ ๋งค์น˜์—… ์ •๋ณด๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค."
83
  )
84
 
85
  if __name__ == "__main__":