Schedule

DataNbaScheduleLoader loads schedule data for a season and creates DataNbaGameItem objects for each game

The following code will load schedule data for 2019-20 NBA Regular Season

from pbpstats.data_loader import DataNbaScheduleFileLoader, DataNbaScheduleLoader

source_loader = DataNbaScheduleFileLoader("/data")
schedule_loader = DataNbaScheduleLoader("nba", "2019-20", "Regular Season", source_loader)
print(schedule_loader.items[0].data)  # prints dict with the first game of the season
class pbpstats.data_loader.data_nba.schedule.loader.DataNbaScheduleLoader(league, season, season_type, source_loader)[source]

Bases: pbpstats.data_loader.data_nba.base.DataNbaLoaderBase

Loads data.nba.com source schedule data for season. Games are stored in items attribute as DataNbaGameItem objects

Parameters:
  • league (str) – Options are ‘nba’, ‘wnba’ or ‘gleague’
  • season (str) – Can be formatted as either 2019-20 or 2019.
  • season_type (str) – Options are ‘Regular Season’ or ‘Playoffs’ or ‘Play In’
  • source_loaderDataNbaScheduleFileLoader or DataNbaScheduleWebLoader object
data

returns raw JSON response data

data_provider = 'data_nba'
parent_object = 'Season'
resource = 'Games'
class pbpstats.data_loader.data_nba.schedule.file.DataNbaScheduleFileLoader(file_directory=None)[source]

Bases: pbpstats.data_loader.data_nba.file_loader.DataNbaFileLoader

A DataNbaScheduleFileLoader object should be instantiated and passed into DataNbaScheduleLoader when loading data from file

Parameters:file_directory (str) – Directory in which data should be loaded from. The specific file location will be data_<league>_<season_year>.json in the /schedule subdirectory.
load_data(league, season)[source]
class pbpstats.data_loader.data_nba.schedule.web.DataNbaScheduleWebLoader(file_directory=None)[source]

Bases: pbpstats.data_loader.data_nba.web_loader.DataNbaWebLoader

A DataNbaScheduleWebLoader object should be instantiated and passed into DataNbaSchedulLoader when loading data directly from the NBA Stats API
Parameters:file_directory (str) – (optional, use it if you want to store the response data on disk) Directory in which data should be either stored. The specific file location will be data_<league>_<season_year>.json in the /schedule subdirectory. If not provided response data will not be saved on disk.
league_id

Returns League Id for league.

00 for nba, 10 for wnba, 20 for g-league

load_data(league, season)[source]