Skip to main content

WeakSide Breakout's complete Python package of access to hockey data, primairly including the scraping of National Hockey League schedule, play-by-play, and shifts information.

Project description

WSBA HOCKEY

WSBA128

A Python package for scraping and analyzing hockey data under the motto: Evaluating, analyzing, and understanding the game of hockey through the lens of different analytical methods, including incorporation of analytics.

INSTALLATION AND USAGE

pip install wsba_hockey
import wsba_hockey as wsba

ALL FEATURES

SCRAPING

NHL Play-by-Play (of any game frame up to a full season)

Functions:

wsba.nhl_scrape_game(2024020918,split_shifts=False,remove=['game-end'])
wsba.nhl_scrape_season(20242025,split_shifts=False,remove=['game-end'],local=True)

NHL Season Information

wsba.nhl_scrape_schedule(20242025)
wsba.nhl_scrape_seasons_info(seasons=[20212022,20222023,20232024,20242025])
wsba.nhl_scrape_standings(arg = '2024-03-20')

NHL Rosters and Player Information

wsba.nhl_scrape_roster(20242025)
wsba.nhl_scrape_team_info()

NHL Draft Rankings and Prospects

wsba.nhl_scrape_draft_rankings()
wsba.nhl_scrape_prospects('BOS')

NHL EDGE Data

wsba.nhl_scrape_edge(20252026,['skater',[8477956, 8479987]])
wsba.nhl_scrape_edge(20252026,['goalie',[8480280]])
wsba.nhl_scrape_edge(20252026,['team',['BOS']])

DATA ANALYTICS

Expected Goals

pbp = wsba.nhl_scrape_game(2024020918,split_shifts=False,remove=['game-end'])
pbp = wsba.nhl_apply_xG(pbp)

Goal Impacts and Shot Analysis

Stat Aggregation

pbp = wsba.nhl_scrape_season(20232024,remove=[], local = True)
wsba.nhl_calculate_stats(pbp,'skater',[2],['5v5','4v4','3v3'],shot_impact = True)

Shot Plotting (Plots, Heatmaps, etc.)

skater_dict = {
    'Patrice Bergeron':[20212022,'BOS']
}
pbp = wsba.nhl_scrape_season(20212022,remove=[], local = True)

wsba.nhl_plot_skaters_shots(pbp,skater_dict,['5v5'],onice='for',legend=True)
wsba.nhl_plot_heatmap(pbp,skater_dict,['5v5','3v3','4v4'],'Even Strength')
wsba.nhl_plot_games(pbp,legend=True)

REPOSITORY

Past Season Play-by-Play

wsba.repo_load_pbp(seasons=[20212022,20222023,20232024,20242025])

Team Information

wsba.repo_load_teaminfo()
wsba.repo_load_rosters(seasons=[20212022,20222023,20232024,20242025])

Schedule

wsba.repo_load_schedule(seasons=[20212022,20222023,20232024,20242025])

DOCUMENTATION

View full documentation here: WSBA Hockey Package Documentation

ACKNOWLEDGEMENTS AND CREDITS

Huge thanks to the following:

Harry Shomer - Creator of the hockey_scraper package, which contains select utils functions within this package and otherwise inspires the creation of this package.

Dan Morse - Creator of the hockeyR package; another important inspiration and model for developing an NHL scraper.

Patrick Bacon - Creator of TopDownHockey package

Anyone in the NHL Public Analytics community who has stuck around and supported WeakSide Breakout Analysis hockey.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wsba_hockey-1.2.9.tar.gz (63.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wsba_hockey-1.2.9-py3-none-any.whl (65.4 kB view details)

Uploaded Python 3

File details

Details for the file wsba_hockey-1.2.9.tar.gz.

File metadata

  • Download URL: wsba_hockey-1.2.9.tar.gz
  • Upload date:
  • Size: 63.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.1

File hashes

Hashes for wsba_hockey-1.2.9.tar.gz
Algorithm Hash digest
SHA256 dd3d52c75427614f7a21d8ad268a1f8eb09469e38361b297995db7251da1ddaa
MD5 b1ddac6ecae519f61a443cf8098c596b
BLAKE2b-256 bba53c718e47f4c6bd26053d06a765fd2b8fe0107f269f4ead82aaba0b214257

See more details on using hashes here.

File details

Details for the file wsba_hockey-1.2.9-py3-none-any.whl.

File metadata

  • Download URL: wsba_hockey-1.2.9-py3-none-any.whl
  • Upload date:
  • Size: 65.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.1

File hashes

Hashes for wsba_hockey-1.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 12caa7cda1865ae670a8b79f05297b38e3fa70fc06d9e60dddc6981ffda96859
MD5 359f31a1c1a49c3df23f8573a2363770
BLAKE2b-256 096e207e17ad3c6434d40689d9872b9c1862dd831280c12ccb58188a9d91ed92

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page