Getting (free) NBA statistics, even the most basic, can be a real pain. Luckily, the NBA Stats API (base uri: http://stats.nba.com/stats/) can provide many of these statistics. This project, and more specifically, this client, serves as an abstraction on top of the NBA Stats API.
Unfortunately, the NBA Stats API makes no guarantees about uptime, breaking changes, and does not have much (i.e. any) documentation around it, so identifying all the available endpoints and their implementation is non-trivial.
Thus, due to these contraints this client is only as dependable and consistent as the NBA Stats service.
Additionally, this client is by no means complete, and will be in active development.
This project is available on PyPi.
To install
pip install nba_data
-
get_players_for_season(season, league=League.nba, current_season_only=CurrentSeasonOnly.yes)
-
get_games_for_team(season, team, season_type=SeasonType.regular_season)
-
get_player_info(player_id)
-
get_advanced_box_score(game_id)
season
: ASeason
enum value. Represents the specific season to query for.league
: ALeague
enum value. Generally speaking, will always want to useLeague.nba
.current_season_only
: ACurrentSeasonOnly
enum value. Whenyes
, disregards thesesaon
parameter and returns all players across all seasonsseason_type
: ASeasonType
enum value that represents which section of a season to query (regular season, playoffs, etc.)player_id
: The unique id that NBA Stats assigns to each player.game_id
: The unique id that NBA Stats assigns to each game.
from nba_data import Client
from nba_data import CurrentSeasonOnly
from nba_data import Season
def get_players_for_2015_season():
return Client.get_players_for_season(season=Season.season_2015)
def get_players_for_every_season():
return Client.get_players_for_season(season=Season.season_2015, current_season_only=CurrentSeasonOnly.no)
from nba_data import Client
from nba_data import Season
from nba_data import SeasonType
from nba_data import Team
def get_regular_season_games_for_2015_boston_celtics():
return Client.get_games_for_team(season=Season.season_2015, team=Team.boston_celtics)
def get_playoff_for_2015_boston_celtics():
return Client.get_games_for_team(season=Season.season_2015, team=Team.boston_celtics, season_type=SeasonType.playoffs)