sportsball 0.3.53__tar.gz → 0.3.55__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sportsball-0.3.53/sportsball.egg-info → sportsball-0.3.55}/PKG-INFO +2 -2
- {sportsball-0.3.53 → sportsball-0.3.55}/requirements.txt +1 -1
- {sportsball-0.3.53 → sportsball-0.3.55}/setup.py +1 -1
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/__init__.py +1 -1
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/google/google_address_model.py +111 -9
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsreference/sportsreference_game_model.py +15 -3
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsreference/sportsreference_team_model.py +5 -2
- {sportsball-0.3.53 → sportsball-0.3.55/sportsball.egg-info}/PKG-INFO +2 -2
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball.egg-info/requires.txt +1 -1
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsreference/sportsreference_game_model_test.py +122 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsreference/sportsreference_team_model_test.py +40 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/LICENSE +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/MANIFEST.in +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/README.md +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/setup.cfg +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/__main__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/args.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/cache.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/address_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afl/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afl/afl_afl_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afl/afl_afl_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afl/afl_afl_player_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afl/afl_afl_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afl/afl_afl_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_player_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/aussportsbetting/afl_aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/combined/afl_combined_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/espn/afl_espn_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/oddsportal/afl_oddsportal_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/aussportsbetting_bookie_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/aussportsbetting_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/aussportsbetting_odds_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/aussportsbetting_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/aussportsbetting/aussportsbetting_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/bookie_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_address_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_player_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/combined/combined_weather_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_bookie_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_odds_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_player_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/espn/espn_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/field_type.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/google/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/google/google_news_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/league.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/combined/nba_combined_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/espn/nba_espn_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/nba/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/nba/nba_nba_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/nba/nba_nba_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/nba/nba_nba_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/oddsportal/nba_oddsportal_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/sportsdb/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/sportsdb/nba_sportsdb_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/sportsreference/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/sportsreference/nba_sportsreference_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/combined/ncaab_combined_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/espn/ncaab_espn_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/oddsportal/ncaab_oddsportal_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/sportsreference/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaab/sportsreference/ncaab_sportsreference_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/combined/ncaaf_combined_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/espn/ncaaf_espn_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/ncaaf/oddsportal/ncaaf_oddsportal_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/news_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/aussportsbetting/nfl_aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/combined/nfl_combined_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/espn/nfl_espn_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/oddsportal/nfl_oddsportal_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/sportsdb/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nfl/sportsdb/nfl_sportsdb_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/odds_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/decrypt.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/oddsportal_bookie_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/oddsportal_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/oddsportal_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/oddsportal_odds_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/oddsportal_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/oddsportal/oddsportal_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/player_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/season_type.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/social_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsdb/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsdb/sportsdb_game_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsdb/sportsdb_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsdb/sportsdb_team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsdb/sportsdb_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsreference/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsreference/sportsreference_league_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsreference/sportsreference_player_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/sportsreference/sportsreference_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/team_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather/gribstream/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather/gribstream/gribstream_weather_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather/multi_weather_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather/openmeteo/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather/openmeteo/openmeteo_weather_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/weather_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/wikipedia/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/wikipedia/wikipedia_venue_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/x/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/x/x_social_model.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/logger.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/loglevel.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/playwright.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/proxy_session.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/session.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/sportsball.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/vendor/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball/vendor/pygooglenews/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball.egg-info/SOURCES.txt +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball.egg-info/dependency_links.txt +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball.egg-info/entry_points.txt +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball.egg-info/not-zip-safe +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/sportsball.egg-info/top_level.txt +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/afl/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/afl/afltables/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/afl/afltables/afl_afltables_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/afl/afltables/afl_afltables_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/afl/afltables/afl_afltables_player_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/aussportsbetting/aussportsbetting_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/combined/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/combined/combined_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/combined/combined_player_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/espn/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/espn/espn_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/espn/espn_player_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/google/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/google/google_address_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/google/google_news_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/nba/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/nba/nba_nba_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/nba/nba_nba_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/nba/nba_nba_team_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/sportsdb/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/sportsdb/nba_sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/sportsreference/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nba/sportsreference/nba_sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/ncaab/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/ncaab/sportsreference/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/ncaab/sportsreference/ncaab_sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nfl/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nfl/sportsdb/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/nfl/sportsdb/nfl_sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/oddsportal/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/oddsportal/decrypt_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/oddsportal/oddsportal_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/oddsportal/oddsportal_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/player_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/social_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsdb/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsdb/sportsdb_game_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsdb/sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsdb/sportsdb_team_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsdb/sportsdb_venue_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsreference/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsreference/sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsreference/sportsreference_player_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/sportsreference/sportsreference_venue_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/team_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/x/__init__.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/data/x/x_social_model_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/proxy_session_test.py +0 -0
- {sportsball-0.3.53 → sportsball-0.3.55}/tests/sportsball_test.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: sportsball
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.55
|
4
4
|
Summary: A library for pulling in and normalising sports stats.
|
5
5
|
Home-page: https://github.com/8W9aG/sportsball
|
6
6
|
Author: Will Sackfield
|
@@ -16,7 +16,7 @@ Requires-Dist: requests>=2.31.0
|
|
16
16
|
Requires-Dist: requests-cache>=1.2.0
|
17
17
|
Requires-Dist: python-dateutil>=1.16.0
|
18
18
|
Requires-Dist: tqdm>=4.66.2
|
19
|
-
Requires-Dist: beautifulsoup4>=4.
|
19
|
+
Requires-Dist: beautifulsoup4>=4.13.3
|
20
20
|
Requires-Dist: openpyxl>=3.1.5
|
21
21
|
Requires-Dist: joblib>=1.4.2
|
22
22
|
Requires-Dist: pyarrow>=18.0.0
|
@@ -26,7 +26,7 @@ def install_requires() -> typing.List[str]:
|
|
26
26
|
|
27
27
|
setup(
|
28
28
|
name='sportsball',
|
29
|
-
version='0.3.
|
29
|
+
version='0.3.55',
|
30
30
|
description='A library for pulling in and normalising sports stats.',
|
31
31
|
long_description=long_description,
|
32
32
|
long_description_content_type='text/markdown',
|
@@ -2269,6 +2269,15 @@ SCHEELS_ARENA = SportsballGeocodeTuple(
|
|
2269
2269
|
housenumber="1600",
|
2270
2270
|
country="USA",
|
2271
2271
|
)
|
2272
|
+
BROOKSHIRE_GROCERY_ARENA = SportsballGeocodeTuple(
|
2273
|
+
city="Bossier City",
|
2274
|
+
state="LA",
|
2275
|
+
postal="",
|
2276
|
+
lat=32.465167,
|
2277
|
+
lng=-93.673583,
|
2278
|
+
housenumber="2000",
|
2279
|
+
country="USA",
|
2280
|
+
)
|
2272
2281
|
_CACHED_GEOCODES: dict[str, Any] = {
|
2273
2282
|
"S.C.G. - Australia": SCG,
|
2274
2283
|
"Victoria Park - Australia": SportsballGeocodeTuple(
|
@@ -11459,15 +11468,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
11459
11468
|
housenumber="2300",
|
11460
11469
|
country="USA",
|
11461
11470
|
),
|
11462
|
-
"Brookshire Grocery Arena, Bossier City, Louisiana":
|
11463
|
-
city="Bossier City",
|
11464
|
-
state="LA",
|
11465
|
-
postal="",
|
11466
|
-
lat=32.465167,
|
11467
|
-
lng=-93.673583,
|
11468
|
-
housenumber="2000",
|
11469
|
-
country="USA",
|
11470
|
-
),
|
11471
|
+
"Brookshire Grocery Arena, Bossier City, Louisiana": BROOKSHIRE_GROCERY_ARENA,
|
11471
11472
|
"Roberto Clemente Coliseum, San Juan": SportsballGeocodeTuple(
|
11472
11473
|
city="San Juan",
|
11473
11474
|
state="PR",
|
@@ -12559,6 +12560,107 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
12559
12560
|
housenumber="",
|
12560
12561
|
country="USA",
|
12561
12562
|
),
|
12563
|
+
"CenturyLink Center (LA), Bossier City, Louisiana": BROOKSHIRE_GROCERY_ARENA,
|
12564
|
+
"Dothan Civic Center, Dothan, Alabama": SportsballGeocodeTuple(
|
12565
|
+
city="Dothan",
|
12566
|
+
state="AL",
|
12567
|
+
postal="",
|
12568
|
+
lat=31.224722,
|
12569
|
+
lng=-85.39,
|
12570
|
+
housenumber="",
|
12571
|
+
country="USA",
|
12572
|
+
),
|
12573
|
+
"Stockton Arena, Stockton, California": SportsballGeocodeTuple(
|
12574
|
+
city="Stockton",
|
12575
|
+
state="CA",
|
12576
|
+
postal="95203",
|
12577
|
+
lat=37.9561651,
|
12578
|
+
lng=-121.2960735,
|
12579
|
+
housenumber="248",
|
12580
|
+
country="USA",
|
12581
|
+
),
|
12582
|
+
"Le Moyne Events Center, Syracuse, New York": SportsballGeocodeTuple(
|
12583
|
+
city="Syracuse",
|
12584
|
+
state="NY",
|
12585
|
+
postal="13214",
|
12586
|
+
lat=43.0502,
|
12587
|
+
lng=-76.0848,
|
12588
|
+
housenumber="500",
|
12589
|
+
country="USA",
|
12590
|
+
),
|
12591
|
+
"Bloch Arena, Honolulu, Hawaii": SportsballGeocodeTuple(
|
12592
|
+
city="Honolulu",
|
12593
|
+
state="HI",
|
12594
|
+
postal="96818",
|
12595
|
+
lat=21.3477415,
|
12596
|
+
lng=-157.9412764,
|
12597
|
+
housenumber="224",
|
12598
|
+
country="USA",
|
12599
|
+
),
|
12600
|
+
"Charleston Civic Center, Charleston, West Virginia": SportsballGeocodeTuple(
|
12601
|
+
city="Charleston",
|
12602
|
+
state="WV",
|
12603
|
+
postal="25301",
|
12604
|
+
lat=38.35519,
|
12605
|
+
lng=-81.64152,
|
12606
|
+
housenumber="200",
|
12607
|
+
country="USA",
|
12608
|
+
),
|
12609
|
+
"Kezar Pavillion, San Francisco, California": KEZAR_STADIUM,
|
12610
|
+
"H.E.B. Center at Cedar Park, Cedar Park, Texas": SportsballGeocodeTuple(
|
12611
|
+
city="Cedar Park",
|
12612
|
+
state="TX",
|
12613
|
+
postal="",
|
12614
|
+
lat=30.5414,
|
12615
|
+
lng=-97.8202,
|
12616
|
+
housenumber="2100",
|
12617
|
+
country="USA",
|
12618
|
+
),
|
12619
|
+
"Tom Golisano Field House, Ave Maria, Florida": SportsballGeocodeTuple(
|
12620
|
+
city="Ave Maria",
|
12621
|
+
state="FL",
|
12622
|
+
postal="34142",
|
12623
|
+
lat=26.3396049,
|
12624
|
+
lng=-81.4410362,
|
12625
|
+
housenumber="4810",
|
12626
|
+
country="USA",
|
12627
|
+
),
|
12628
|
+
"Tuba City HS Gym, Tuba City, Arizona": SportsballGeocodeTuple(
|
12629
|
+
city="Tuba City",
|
12630
|
+
state="AZ",
|
12631
|
+
postal="86045",
|
12632
|
+
lat=36.126661,
|
12633
|
+
lng=-111.223479,
|
12634
|
+
housenumber="",
|
12635
|
+
country="USA",
|
12636
|
+
),
|
12637
|
+
"Lakeland Center, Lakeland, Florida": SportsballGeocodeTuple(
|
12638
|
+
city="Lakeland",
|
12639
|
+
state="FL",
|
12640
|
+
postal="33815",
|
12641
|
+
lat=28.041053,
|
12642
|
+
lng=-81.963619,
|
12643
|
+
housenumber="701",
|
12644
|
+
country="USA",
|
12645
|
+
),
|
12646
|
+
"'Iolani School Gym, Honolulu, Hawaii": SportsballGeocodeTuple(
|
12647
|
+
city="Honolulu",
|
12648
|
+
state="HI",
|
12649
|
+
postal="96826",
|
12650
|
+
lat=21.2865,
|
12651
|
+
lng=-157.824567,
|
12652
|
+
housenumber="563",
|
12653
|
+
country="USA",
|
12654
|
+
),
|
12655
|
+
"Mercyhurst Athletic Center, Erie, Pennsylvania": SportsballGeocodeTuple(
|
12656
|
+
city="Erie",
|
12657
|
+
state="PA",
|
12658
|
+
postal="",
|
12659
|
+
lat=42.1046,
|
12660
|
+
lng=-80.0556,
|
12661
|
+
housenumber="",
|
12662
|
+
country="USA",
|
12663
|
+
),
|
12562
12664
|
}
|
12563
12665
|
|
12564
12666
|
|
@@ -4,6 +4,7 @@
|
|
4
4
|
import datetime
|
5
5
|
import io
|
6
6
|
import logging
|
7
|
+
import re
|
7
8
|
import urllib.parse
|
8
9
|
|
9
10
|
import dateutil
|
@@ -41,6 +42,7 @@ _MONTHS = [
|
|
41
42
|
"November",
|
42
43
|
"December",
|
43
44
|
]
|
45
|
+
_NUMBER_PARENTHESIS_PATTERN = r"\(\d+\)"
|
44
46
|
|
45
47
|
|
46
48
|
def _find_old_dt(
|
@@ -142,8 +144,13 @@ def _find_old_dt(
|
|
142
144
|
points = int(team_name.split()[-1].strip())
|
143
145
|
team_name = " ".join(team_name.split()[:-1]).strip()
|
144
146
|
break
|
147
|
+
team_name = " ".join(
|
148
|
+
re.sub(_NUMBER_PARENTHESIS_PATTERN, "", team_name).split()
|
149
|
+
).strip()
|
145
150
|
team_a = soup.find("a", text=team_name, href=True)
|
146
151
|
if not isinstance(team_a, Tag):
|
152
|
+
logging.error(team_name)
|
153
|
+
logging.error(response.url)
|
147
154
|
logging.error(response.text)
|
148
155
|
raise ValueError("team_a is not a tag.")
|
149
156
|
team_url = urllib.parse.urljoin(url, str(team_a.get("href")))
|
@@ -203,9 +210,14 @@ def _find_old_dt(
|
|
203
210
|
dt = parse(date)
|
204
211
|
for df in dfs:
|
205
212
|
test_row = df.iat[0, 0]
|
206
|
-
|
207
|
-
|
208
|
-
|
213
|
+
try:
|
214
|
+
if "Prev Game" in test_row:
|
215
|
+
_process_team_row(df)
|
216
|
+
break
|
217
|
+
except TypeError as exc:
|
218
|
+
logging.error(test_row)
|
219
|
+
logging.error(response.text)
|
220
|
+
raise exc
|
209
221
|
|
210
222
|
if venue_name is not None and not venue_name.replace(",", "").strip():
|
211
223
|
venue_name = None
|
@@ -66,8 +66,11 @@ def _find_name(response: requests.Response, soup: BeautifulSoup, url: str) -> st
|
|
66
66
|
return a.get_text().strip()
|
67
67
|
name_tag = soup.find("meta", itemprop="name")
|
68
68
|
if not isinstance(name_tag, Tag):
|
69
|
-
|
70
|
-
|
69
|
+
name_tag = soup.find("meta", itemprop="og:title")
|
70
|
+
if not isinstance(name_tag, Tag):
|
71
|
+
logging.error(type(name_tag))
|
72
|
+
logging.error(response.text)
|
73
|
+
raise ValueError("name_tag not a tag.") from exc
|
71
74
|
content = name_tag.get("content")
|
72
75
|
if not isinstance(content, str):
|
73
76
|
raise ValueError("content not a tag.") from exc
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: sportsball
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.55
|
4
4
|
Summary: A library for pulling in and normalising sports stats.
|
5
5
|
Home-page: https://github.com/8W9aG/sportsball
|
6
6
|
Author: Will Sackfield
|
@@ -16,7 +16,7 @@ Requires-Dist: requests>=2.31.0
|
|
16
16
|
Requires-Dist: requests-cache>=1.2.0
|
17
17
|
Requires-Dist: python-dateutil>=1.16.0
|
18
18
|
Requires-Dist: tqdm>=4.66.2
|
19
|
-
Requires-Dist: beautifulsoup4>=4.
|
19
|
+
Requires-Dist: beautifulsoup4>=4.13.3
|
20
20
|
Requires-Dist: openpyxl>=3.1.5
|
21
21
|
Requires-Dist: joblib>=1.4.2
|
22
22
|
Requires-Dist: pyarrow>=18.0.0
|
@@ -883,3 +883,125 @@ class TestSportsReferenceGameModel(unittest.TestCase):
|
|
883
883
|
datetime.datetime(2010, 10, 10, 10, 10, 0),
|
884
884
|
)
|
885
885
|
self.assertEqual(game_model.dt, datetime.datetime(1968, 4, 14, 0, 0))
|
886
|
+
|
887
|
+
def test_dt_old_style_18(self):
|
888
|
+
url = "https://www.sports-reference.com/cbb/boxscores/2016-04-02-north-carolina.html"
|
889
|
+
with requests_mock.Mocker() as m:
|
890
|
+
with open(os.path.join(self.dir, "2016-04-02-north-carolina.html"), "rb") as f:
|
891
|
+
m.get(url, content=f.read())
|
892
|
+
with open(os.path.join(self.dir, "syracuse_2016.html"), "rb") as f:
|
893
|
+
m.get("https://www.sports-reference.com/cbb/schools/syracuse/2016.html", content=f.read())
|
894
|
+
with open(os.path.join(self.dir, "franklin-howard-1.html"), "rb") as f:
|
895
|
+
m.get("https://www.sports-reference.com/cbb/players/franklin-howard-1.html", content=f.read())
|
896
|
+
with open(os.path.join(self.dir, "michael-gbinije-1.html"), "rb") as f:
|
897
|
+
m.get("https://www.sports-reference.com/cbb/players/michael-gbinije-1.html", content=f.read())
|
898
|
+
with open(os.path.join(self.dir, "malachi-richardson-1.html"), "rb") as f:
|
899
|
+
m.get("https://www.sports-reference.com/cbb/players/malachi-richardson-1.html", content=f.read())
|
900
|
+
with open(os.path.join(self.dir, "dajuan-coleman-1.html"), "rb") as f:
|
901
|
+
m.get("https://www.sports-reference.com/cbb/players/dajuan-coleman-1.html", content=f.read())
|
902
|
+
with open(os.path.join(self.dir, "trevor-cooney-1.html"), "rb") as f:
|
903
|
+
m.get("https://www.sports-reference.com/cbb/players/trevor-cooney-1.html", content=f.read())
|
904
|
+
with open(os.path.join(self.dir, "tyler-roberson-1.html"), "rb") as f:
|
905
|
+
m.get("https://www.sports-reference.com/cbb/players/tyler-roberson-1.html", content=f.read())
|
906
|
+
with open(os.path.join(self.dir, "tyler-lydon-1.html"), "rb") as f:
|
907
|
+
m.get("https://www.sports-reference.com/cbb/players/tyler-lydon-1.html", content=f.read())
|
908
|
+
with open(os.path.join(self.dir, "north-carolina-2016.html"), "rb") as f:
|
909
|
+
m.get("https://www.sports-reference.com/cbb/schools/north-carolina/2016.html", content=f.read())
|
910
|
+
with open(os.path.join(self.dir, "kenny-williams-3.html"), "rb") as f:
|
911
|
+
m.get("https://www.sports-reference.com/cbb/players/kenny-williams-3.html", content=f.read())
|
912
|
+
with open(os.path.join(self.dir, "joel-berry-1.html"), "rb") as f:
|
913
|
+
m.get("https://www.sports-reference.com/cbb/players/joel-berry-1.html", content=f.read())
|
914
|
+
with open(os.path.join(self.dir, "brice-johnson-1.html"), "rb") as f:
|
915
|
+
m.get("https://www.sports-reference.com/cbb/players/brice-johnson-1.html", content=f.read())
|
916
|
+
with open(os.path.join(self.dir, "luke-maye-1.html"), "rb") as f:
|
917
|
+
m.get("https://www.sports-reference.com/cbb/players/luke-maye-1.html", content=f.read())
|
918
|
+
with open(os.path.join(self.dir, "nate-britt-1.html"), "rb") as f:
|
919
|
+
m.get("https://www.sports-reference.com/cbb/players/nate-britt-1.html", content=f.read())
|
920
|
+
with open(os.path.join(self.dir, "kanler-coker-1.html"), "rb") as f:
|
921
|
+
m.get("https://www.sports-reference.com/cbb/players/kanler-coker-1.html", content=f.read())
|
922
|
+
with open(os.path.join(self.dir, "theo-pinson-1.html"), "rb") as f:
|
923
|
+
m.get("https://www.sports-reference.com/cbb/players/theo-pinson-1.html", content=f.read())
|
924
|
+
with open(os.path.join(self.dir, "kennedy-meeks-1.html"), "rb") as f:
|
925
|
+
m.get("https://www.sports-reference.com/cbb/players/kennedy-meeks-1.html", content=f.read())
|
926
|
+
with open(os.path.join(self.dir, "marcus-paige-1.html"), "rb") as f:
|
927
|
+
m.get("https://www.sports-reference.com/cbb/players/marcus-paige-1.html", content=f.read())
|
928
|
+
with open(os.path.join(self.dir, "joel-james-1.html"), "rb") as f:
|
929
|
+
m.get("https://www.sports-reference.com/cbb/players/joel-james-1.html", content=f.read())
|
930
|
+
with open(os.path.join(self.dir, "spenser-dalton-1.html"), "rb") as f:
|
931
|
+
m.get("https://www.sports-reference.com/cbb/players/spenser-dalton-1.html", content=f.read())
|
932
|
+
with open(os.path.join(self.dir, "justin-jackson-4.html"), "rb") as f:
|
933
|
+
m.get("https://www.sports-reference.com/cbb/players/justin-jackson-4.html", content=f.read())
|
934
|
+
with open(os.path.join(self.dir, "toby-egbuna-1.html"), "rb") as f:
|
935
|
+
m.get("https://www.sports-reference.com/cbb/players/toby-egbuna-1.html", content=f.read())
|
936
|
+
with open(os.path.join(self.dir, "stilman-white-1.html"), "rb") as f:
|
937
|
+
m.get("https://www.sports-reference.com/cbb/players/stilman-white-1.html", content=f.read())
|
938
|
+
with open(os.path.join(self.dir, "isaiah-hicks-1.html"), "rb") as f:
|
939
|
+
m.get("https://www.sports-reference.com/cbb/players/isaiah-hicks-1.html", content=f.read())
|
940
|
+
|
941
|
+
game_model = create_sportsreference_game_model(
|
942
|
+
self.session,
|
943
|
+
url,
|
944
|
+
League.NBA,
|
945
|
+
datetime.datetime(2010, 10, 10, 10, 10, 0),
|
946
|
+
)
|
947
|
+
self.assertEqual(game_model.dt, datetime.datetime(2016, 4, 2, 0, 0))
|
948
|
+
|
949
|
+
def test_dt_old_style_19(self):
|
950
|
+
url = "https://www.sports-reference.com/cbb/boxscores/2016-03-24-villanova.html"
|
951
|
+
with requests_mock.Mocker() as m:
|
952
|
+
with open(os.path.join(self.dir, "2016-03-24-villanova.html"), "rb") as f:
|
953
|
+
m.get(url, content=f.read())
|
954
|
+
with open(os.path.join(self.dir, "miami-fl_2016.html"), "rb") as f:
|
955
|
+
m.get("https://www.sports-reference.com/cbb/schools/miami-fl/2016.html", content=f.read())
|
956
|
+
with open(os.path.join(self.dir, "sheldon-mcclellan-1.html"), "rb") as f:
|
957
|
+
m.get("https://www.sports-reference.com/cbb/players/sheldon-mcclellan-1.html", content=f.read())
|
958
|
+
with open(os.path.join(self.dir, "anthony-lawrencejr-1.html"), "rb") as f:
|
959
|
+
m.get("https://www.sports-reference.com/cbb/players/anthony-lawrencejr-1.html", content=f.read())
|
960
|
+
with open(os.path.join(self.dir, "davon-reed-1.html"), "rb") as f:
|
961
|
+
m.get("https://www.sports-reference.com/cbb/players/davon-reed-1.html", content=f.read())
|
962
|
+
with open(os.path.join(self.dir, "kamari-murphy-1.html"), "rb") as f:
|
963
|
+
m.get("https://www.sports-reference.com/cbb/players/kamari-murphy-1.html", content=f.read())
|
964
|
+
with open(os.path.join(self.dir, "angel-rodriguez-1.html"), "rb") as f:
|
965
|
+
m.get("https://www.sports-reference.com/cbb/players/angel-rodriguez-1.html", content=f.read())
|
966
|
+
with open(os.path.join(self.dir, "mike-robinson-4.html"), "rb") as f:
|
967
|
+
m.get("https://www.sports-reference.com/cbb/players/mike-robinson-4.html", content=f.read())
|
968
|
+
with open(os.path.join(self.dir, "ebuka-izundu-1.html"), "rb") as f:
|
969
|
+
m.get("https://www.sports-reference.com/cbb/players/ebuka-izundu-1.html", content=f.read())
|
970
|
+
with open(os.path.join(self.dir, "jaquan-newton-1.html"), "rb") as f:
|
971
|
+
m.get("https://www.sports-reference.com/cbb/players/jaquan-newton-1.html", content=f.read())
|
972
|
+
with open(os.path.join(self.dir, "james-palmer-1.html"), "rb") as f:
|
973
|
+
m.get("https://www.sports-reference.com/cbb/players/james-palmer-1.html", content=f.read())
|
974
|
+
with open(os.path.join(self.dir, "tonye-jekiri-1.html"), "rb") as f:
|
975
|
+
m.get("https://www.sports-reference.com/cbb/players/tonye-jekiri-1.html", content=f.read())
|
976
|
+
with open(os.path.join(self.dir, "villanova_2016.html"), "rb") as f:
|
977
|
+
m.get("https://www.sports-reference.com/cbb/schools/villanova/2016.html", content=f.read())
|
978
|
+
with open(os.path.join(self.dir, "jalen-brunson-1.html"), "rb") as f:
|
979
|
+
m.get("https://www.sports-reference.com/cbb/players/jalen-brunson-1.html", content=f.read())
|
980
|
+
with open(os.path.join(self.dir, "ryan-arcidiacono-1.html"), "rb") as f:
|
981
|
+
m.get("https://www.sports-reference.com/cbb/players/ryan-arcidiacono-1.html", content=f.read())
|
982
|
+
with open(os.path.join(self.dir, "kevin-rafferty-1.html"), "rb") as f:
|
983
|
+
m.get("https://www.sports-reference.com/cbb/players/kevin-rafferty-1.html", content=f.read())
|
984
|
+
with open(os.path.join(self.dir, "mikal-bridges-1.html"), "rb") as f:
|
985
|
+
m.get("https://www.sports-reference.com/cbb/players/mikal-bridges-1.html", content=f.read())
|
986
|
+
with open(os.path.join(self.dir, "daniel-ochefu-1.html"), "rb") as f:
|
987
|
+
m.get("https://www.sports-reference.com/cbb/players/daniel-ochefu-1.html", content=f.read())
|
988
|
+
with open(os.path.join(self.dir, "phil-booth-1.html"), "rb") as f:
|
989
|
+
m.get("https://www.sports-reference.com/cbb/players/phil-booth-1.html", content=f.read())
|
990
|
+
with open(os.path.join(self.dir, "darryl-reynolds-1.html"), "rb") as f:
|
991
|
+
m.get("https://www.sports-reference.com/cbb/players/darryl-reynolds-1.html", content=f.read())
|
992
|
+
with open(os.path.join(self.dir, "kris-jenkins-1.html"), "rb") as f:
|
993
|
+
m.get("https://www.sports-reference.com/cbb/players/kris-jenkins-1.html", content=f.read())
|
994
|
+
with open(os.path.join(self.dir, "patrick-farrell-1.html"), "rb") as f:
|
995
|
+
m.get("https://www.sports-reference.com/cbb/players/patrick-farrell-1.html", content=f.read())
|
996
|
+
with open(os.path.join(self.dir, "josh-hart-1.html"), "rb") as f:
|
997
|
+
m.get("https://www.sports-reference.com/cbb/players/josh-hart-1.html", content=f.read())
|
998
|
+
with open(os.path.join(self.dir, "henry-lowe-1.html"), "rb") as f:
|
999
|
+
m.get("https://www.sports-reference.com/cbb/players/henry-lowe-1.html", content=f.read())
|
1000
|
+
|
1001
|
+
game_model = create_sportsreference_game_model(
|
1002
|
+
self.session,
|
1003
|
+
url,
|
1004
|
+
League.NBA,
|
1005
|
+
datetime.datetime(2010, 10, 10, 10, 10, 0),
|
1006
|
+
)
|
1007
|
+
self.assertEqual(game_model.dt, datetime.datetime(2016, 3, 24, 0, 0))
|
@@ -146,3 +146,43 @@ class TestSportsReferenceTeamModel(unittest.TestCase):
|
|
146
146
|
{},
|
147
147
|
)
|
148
148
|
self.assertEqual(team_model.name, "Cleveland Cavaliers")
|
149
|
+
|
150
|
+
def test_name_2(self):
|
151
|
+
url = "http://www.basketball-reference.com/teams/LAL/2015.html"
|
152
|
+
with requests_mock.Mocker() as m:
|
153
|
+
with open(os.path.join(self.dir, "LAL_2015.html"), "rb") as f:
|
154
|
+
m.get(url, content=f.read())
|
155
|
+
team_model = create_sportsreference_team_model(
|
156
|
+
self.session,
|
157
|
+
url,
|
158
|
+
datetime.datetime(2010, 10, 10, 10, 10, 00),
|
159
|
+
League.NBA,
|
160
|
+
set(),
|
161
|
+
10.0,
|
162
|
+
{},
|
163
|
+
{},
|
164
|
+
{},
|
165
|
+
{},
|
166
|
+
{},
|
167
|
+
)
|
168
|
+
self.assertEqual(team_model.name, "Los Angeles Lakers")
|
169
|
+
|
170
|
+
def test_name_3(self):
|
171
|
+
url = "https://www.basketball-reference.com/teams/BOS/2015.html"
|
172
|
+
with requests_mock.Mocker() as m:
|
173
|
+
with open(os.path.join(self.dir, "BOS_2015.html"), "rb") as f:
|
174
|
+
m.get(url, content=f.read())
|
175
|
+
team_model = create_sportsreference_team_model(
|
176
|
+
self.session,
|
177
|
+
url,
|
178
|
+
datetime.datetime(2010, 10, 10, 10, 10, 00),
|
179
|
+
League.NBA,
|
180
|
+
set(),
|
181
|
+
10.0,
|
182
|
+
{},
|
183
|
+
{},
|
184
|
+
{},
|
185
|
+
{},
|
186
|
+
{},
|
187
|
+
)
|
188
|
+
self.assertEqual(team_model.name, "Boston Celtics")
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_game_model.py
RENAMED
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_league_model.py
RENAMED
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_player_model.py
RENAMED
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_team_model.py
RENAMED
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/afltables/afl_afltables_venue_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/afl/combined/afl_combined_league_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.53 → sportsball-0.3.55}/sportsball/data/nba/combined/nba_combined_league_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|