Skip to main content

Python Hockey Data Scraper

Project description

EdgingHockeyScraper

im https://pypi.python.org/pypi/edginghockeyscraper

Install

pip install edginghockeyscraper

Python Hockey Data Scraper

Features

  • Python Hockey Data Scraper with following features:

    • Caching Requests to quickly fetch data
    • Parallel Processing to speed up data fetch from NHL API
  • Get League schedule for year - Usageschedule = edginghockeyscraper.get_league_schedule(2024)

  • Get Game boxscore

    • boxscore = edginghockeyscraper.get_boxscore(2024020345)
  • Get Game playByPlay

    • playByPlay = edginghockeyscraper.get_play_by_play(2024020345)
  • Get Season boxscores

    • boxscoreSeason = edginghockeyscraper.get_boxscore_season(2024)
  • Get Season playByPlay

    • playByPlaySeason = edginghockeyscraper.get_play_by_play_season(2024)

Filter Season data by PreSeason, Regular, PostSeason gametypes

  • e.g.
    • games = edginghockeyscraper.get_league_schedule(2024, {GameType.REG})
    • boxscoreSeason = edginghockeyscraper.get_boxscore_season(2024, {GameType.REG})

Utilize requests-cache for fast repeated request calls

  • First Call:

    %%time
    edginghockeyscraper.get_boxscore_season(2024, cache= True)
    

    CPU times: user 583 ms, sys: 318 ms, total: 901 ms Wall time: 1min 18s

  • Second Call:

    • CPU times: user 374 ms, sys: 141 ms, total: 515 ms Wall time: 1.31 s

    A 60x speedup!

Utilize multiprocessing to improve request speed

Benchmark using 2024 Macbook Air Apple M3 16GB

  1. No Parallel getBoxscoreSeason: CPU times: user 15.6 s, sys: 3.55 s, total: 19.1 s Wall time: 8min 49s

  2. Parallel getBoxscoreSeason: CPU times: user 583 ms, sys: 318 ms, total: 901 ms Wall time: 1min 18s

    A ~7x Speedup! (this is an 8-core CPU - you can expect roughly a <# cpu-cores> speedup)

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

edginghockeyscraper-0.1.3.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

edginghockeyscraper-0.1.3-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file edginghockeyscraper-0.1.3.tar.gz.

File metadata

  • Download URL: edginghockeyscraper-0.1.3.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for edginghockeyscraper-0.1.3.tar.gz
Algorithm Hash digest
SHA256 65cc2552590d9a9e5e57a19bc93c36b46daf313dc6a54f145d355ba828de26f5
MD5 d11914cad9a13f633da242ce09980f6c
BLAKE2b-256 fc8cd201b45683081f8c0d749b1a3fe0b061b913ba0e4aa8914a846f23d9ab64

See more details on using hashes here.

Provenance

The following attestation bundles were made for edginghockeyscraper-0.1.3.tar.gz:

Publisher: python-publish.yml on austinegri/edginghockeyscraper

Attestations:

File details

Details for the file edginghockeyscraper-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for edginghockeyscraper-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 025212d2c9bd1bc34c8a8867f28b51b54a166dcdf004748ed6a1bb8a440d11f0
MD5 79e7deb230e0b3824fb67ed6e798476d
BLAKE2b-256 9c1e30f6c453aaf2f064683514f280ee71c6080a920c7628f7afe1293633c5fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for edginghockeyscraper-0.1.3-py3-none-any.whl:

Publisher: python-publish.yml on austinegri/edginghockeyscraper

Attestations:

Supported by

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