stats.nba.com Enhanced PBP¶
Ejection¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.ejection.
StatsEjection
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.ejection.Ejection
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for Ejection events
End of Period¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.end_of_period.
StatsEndOfPeriod
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.end_of_period.EndOfPeriod
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for end of period events
Enhanced PBP Factory¶
StatsNbaEnhancedPbpFactory
can be used to create enhanced pbp event objects from
the pbpstats.resources.enhanced_pbp.stats_nba
module based on the event type.
The following code will get the event class for event type 1 (which is the event type for a field goal make)
from pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_factory import StatsNbaEnhancedPbpFactory
factory = StatsNbaEnhancedPbpFactory()
event_class = factory.get_event_class(1)
print(event_class) # prints "<class 'pbpstats.resources.enhanced_pbp.stats_nba.field_goal.StatsFieldGoal'>"
Enhanced PBP Item¶
StatsEnhancedPbpItem
is the base class for all stats.nba.com enhanced pbp event types
-
class
pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.
StatsEnhancedPbpItem
(event, order)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.enhanced_pbp_item.EnhancedPbpItem
Base class for enhanced pbp events from stats.nba.com
- Parameters
event (dict) – dict with event data
order (int) – sequential order in which event occurs
-
property
data
¶ returns event as a dict
-
property
is_possession_ending_event
¶ returns True if event ends a possession, False otherwise
-
property
video_url
¶ returns url for mp4 video of play, if available
Field Goal¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.field_goal.
StatsFieldGoal
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.field_goal.FieldGoal
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for field goal events
-
property
shot_value
¶ returns 3 if shot is a 3 point attempt, 2 otherwise
-
property
Foul¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.foul.
StatsFoul
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.foul.Foul
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for foul events
-
property
number_of_fta_for_foul
¶ returns the number of free throws resulting from the foul
-
property
Free Throw¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.free_throw.
StatsFreeThrow
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.free_throw.FreeThrow
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for free throw events
-
property
is_made
¶ returns True if shot was made, False otherwise
-
property
Jump Ball¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.jump_ball.
StatsJumpBall
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.jump_ball.JumpBall
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for jump ball events
Rebound¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.rebound.
StatsRebound
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.rebound.Rebound
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for rebound events
Replay¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.replay.
StatsReplay
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.replay.Replay
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for replay events
Start of Period¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.start_of_period.
StatsStartOfPeriod
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.start_of_period.StartOfPeriod
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for start of period events
-
get_period_starters
(file_directory=None)[source]¶ Gets player ids of players who started the period for each team. If players can’t be determined from parsing pbp, will try to find them by making API request to stats.nba.com boxscore filtered by time.
- Parameters
file_directory (str) – directory in which overrides subdirectory exists containing period starter overrides when period starters can’t be determined from parsing pbp events
- Returns
dict with list of player ids for each team with players on the floor at start of period
- Raises
InvalidNumberOfStartersException
: If all 5 players that start the period for a team can’t be determined.
-
property
league_url_part
¶
-
Substitution¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.substitution.
StatsSubstitution
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.substitution.Substitution
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for Substitution events
Timeout¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.timeout.
StatsTimeout
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.timeout.Timeout
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for timeout events
Turnover¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.turnover.
StatsTurnover
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.turnover.Turnover
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for Turnover events
Violation¶
-
class
pbpstats.resources.enhanced_pbp.stats_nba.violation.
StatsViolation
(*args)[source]¶ Bases:
pbpstats.resources.enhanced_pbp.violation.Violation
,pbpstats.resources.enhanced_pbp.stats_nba.enhanced_pbp_item.StatsEnhancedPbpItem
Class for violation events