sportsball 0.3.51__tar.gz → 0.3.53__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.51/sportsball.egg-info → sportsball-0.3.53}/PKG-INFO +1 -1
- {sportsball-0.3.51 → sportsball-0.3.53}/setup.py +1 -1
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/__init__.py +1 -1
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afl/afl_afl_league_model.py +35 -24
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/google/google_address_model.py +124 -27
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/logger.py +8 -1
- {sportsball-0.3.51 → sportsball-0.3.53/sportsball.egg-info}/PKG-INFO +1 -1
- {sportsball-0.3.51 → sportsball-0.3.53}/LICENSE +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/MANIFEST.in +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/README.md +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/requirements.txt +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/setup.cfg +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/__main__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/args.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/cache.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/address_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afl/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afl/afl_afl_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afl/afl_afl_player_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afl/afl_afl_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afl/afl_afl_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_player_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/aussportsbetting/afl_aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/combined/afl_combined_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/espn/afl_espn_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/oddsportal/afl_oddsportal_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/aussportsbetting_bookie_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/aussportsbetting_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/aussportsbetting_odds_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/aussportsbetting_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/aussportsbetting/aussportsbetting_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/bookie_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_address_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_player_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/combined/combined_weather_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_bookie_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_odds_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_player_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/espn/espn_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/field_type.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/google/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/google/google_news_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/league.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/combined/nba_combined_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/espn/nba_espn_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/nba/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/nba/nba_nba_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/nba/nba_nba_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/nba/nba_nba_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/oddsportal/nba_oddsportal_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/sportsdb/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/sportsdb/nba_sportsdb_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/sportsreference/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/sportsreference/nba_sportsreference_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/combined/ncaab_combined_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/espn/ncaab_espn_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/oddsportal/ncaab_oddsportal_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/sportsreference/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/sportsreference/ncaab_sportsreference_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/combined/ncaaf_combined_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/espn/ncaaf_espn_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/oddsportal/ncaaf_oddsportal_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/news_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/aussportsbetting/nfl_aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/combined/nfl_combined_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/espn/nfl_espn_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/oddsportal/nfl_oddsportal_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/sportsdb/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/sportsdb/nfl_sportsdb_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/odds_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/decrypt.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_bookie_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_odds_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/player_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/season_type.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/social_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsdb/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsdb/sportsdb_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsdb/sportsdb_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsdb/sportsdb_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsdb/sportsdb_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsreference/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsreference/sportsreference_game_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsreference/sportsreference_league_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsreference/sportsreference_player_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsreference/sportsreference_team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/sportsreference/sportsreference_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/team_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/gribstream/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/gribstream/gribstream_weather_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/multi_weather_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/openmeteo/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/openmeteo/openmeteo_weather_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/wikipedia/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/wikipedia/wikipedia_venue_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/x/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/x/x_social_model.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/loglevel.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/playwright.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/proxy_session.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/session.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/sportsball.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/vendor/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball/vendor/pygooglenews/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball.egg-info/SOURCES.txt +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball.egg-info/dependency_links.txt +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball.egg-info/entry_points.txt +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball.egg-info/not-zip-safe +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball.egg-info/requires.txt +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/sportsball.egg-info/top_level.txt +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/afl_afltables_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/afl_afltables_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/afl_afltables_player_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/aussportsbetting/aussportsbetting_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/combined/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/combined/combined_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/combined/combined_player_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/espn/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/espn/espn_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/espn/espn_player_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/google/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/google/google_address_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/google/google_news_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/nba/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/nba/nba_nba_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/nba/nba_nba_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/nba/nba_nba_team_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/sportsdb/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/sportsdb/nba_sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/sportsreference/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/sportsreference/nba_sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/ncaab/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/ncaab/sportsreference/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/ncaab/sportsreference/ncaab_sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nfl/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nfl/sportsdb/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nfl/sportsdb/nfl_sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/oddsportal/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/oddsportal/decrypt_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/oddsportal/oddsportal_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/oddsportal/oddsportal_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/player_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/social_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsdb/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsdb/sportsdb_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsdb/sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsdb/sportsdb_team_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsdb/sportsdb_venue_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsreference/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsreference/sportsreference_game_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsreference/sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsreference/sportsreference_player_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsreference/sportsreference_team_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/sportsreference/sportsreference_venue_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/team_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/x/__init__.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/data/x/x_social_model_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/proxy_session_test.py +0 -0
- {sportsball-0.3.51 → sportsball-0.3.53}/tests/sportsball_test.py +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.53',
|
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',
|
@@ -44,34 +44,45 @@ class AFLAFLLeagueModel(LeagueModel):
|
|
44
44
|
"span", {"class": re.compile(".*team-lineups__team-name.*")}
|
45
45
|
):
|
46
46
|
team_names.append(span.get_text().strip())
|
47
|
-
teams_players: list[list[tuple[str, str, str, str]]] = []
|
48
|
-
for
|
49
|
-
"div", {"class": re.compile(".*team-lineups__positions-
|
47
|
+
teams_players: list[list[tuple[str, str, str, str]]] = [[], []]
|
48
|
+
for div_positions_row in div.find_all(
|
49
|
+
"div", {"class": re.compile(".*team-lineups__positions-row.*")}
|
50
50
|
):
|
51
|
-
|
52
|
-
for
|
53
|
-
"
|
51
|
+
row_players: list[list[tuple[str, str, str, str]]] = []
|
52
|
+
for div_team_players in div_positions_row.find_all(
|
53
|
+
"div",
|
54
|
+
{"class": re.compile(".*team-lineups__positions-players.*")},
|
54
55
|
):
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
player_number = None
|
59
|
-
for span_player_number in a.find_all(
|
60
|
-
"span",
|
61
|
-
{"class": re.compile(".*team-lineups__player-number.*")},
|
56
|
+
team_players: list[tuple[str, str, str, str]] = []
|
57
|
+
for a in div_team_players.find_all(
|
58
|
+
"a", {"class": re.compile(".*js-player-profile-link.*")}
|
62
59
|
):
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
60
|
+
player_id = "afl:" + a.get("data-player-id")
|
61
|
+
first_name = a.get("data-first-name")
|
62
|
+
second_name = a.get("data-surname")
|
63
|
+
player_number = None
|
64
|
+
for span_player_number in a.find_all(
|
65
|
+
"span",
|
66
|
+
{
|
67
|
+
"class": re.compile(
|
68
|
+
".*team-lineups__player-number.*"
|
69
|
+
)
|
70
|
+
},
|
71
|
+
):
|
72
|
+
player_number = (
|
73
|
+
span_player_number.get_text()
|
74
|
+
.strip()
|
75
|
+
.replace("[", "")
|
76
|
+
.replace("]", "")
|
77
|
+
)
|
78
|
+
if player_number is None:
|
79
|
+
raise ValueError("player_number is null")
|
80
|
+
team_players.append(
|
81
|
+
(player_id, player_number, first_name, second_name)
|
68
82
|
)
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
(player_id, player_number, first_name, second_name)
|
73
|
-
)
|
74
|
-
teams_players.append(team_players)
|
83
|
+
row_players.append(team_players)
|
84
|
+
for count, row_players_list in enumerate(row_players):
|
85
|
+
teams_players[count].extend(row_players_list)
|
75
86
|
dt = None
|
76
87
|
for time in div.find_all(
|
77
88
|
"time", {"class": re.compile(".*match-list-alt__header-time.*")}
|
@@ -2242,6 +2242,33 @@ STUAR_SIEGEL_CENTER = SportsballGeocodeTuple(
|
|
2242
2242
|
housenumber="1200",
|
2243
2243
|
country="USA",
|
2244
2244
|
)
|
2245
|
+
MEMORIAL_COLISEUM = SportsballGeocodeTuple(
|
2246
|
+
city="Portland",
|
2247
|
+
state="OR",
|
2248
|
+
postal="",
|
2249
|
+
lat=45.532,
|
2250
|
+
lng=-122.669,
|
2251
|
+
housenumber="300",
|
2252
|
+
country="USA",
|
2253
|
+
)
|
2254
|
+
FINNERAN_PAVILION = SportsballGeocodeTuple(
|
2255
|
+
city="Villanova",
|
2256
|
+
state="PA",
|
2257
|
+
postal="19085",
|
2258
|
+
lat=40.034072,
|
2259
|
+
lng=-75.336553,
|
2260
|
+
housenumber="",
|
2261
|
+
country="USA",
|
2262
|
+
)
|
2263
|
+
SCHEELS_ARENA = SportsballGeocodeTuple(
|
2264
|
+
city="Fargo",
|
2265
|
+
state="ND",
|
2266
|
+
postal="",
|
2267
|
+
lat=46.900442,
|
2268
|
+
lng=-96.799025,
|
2269
|
+
housenumber="1600",
|
2270
|
+
country="USA",
|
2271
|
+
)
|
2245
2272
|
_CACHED_GEOCODES: dict[str, Any] = {
|
2246
2273
|
"S.C.G. - Australia": SCG,
|
2247
2274
|
"Victoria Park - Australia": SportsballGeocodeTuple(
|
@@ -4538,15 +4565,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
4538
4565
|
housenumber="936",
|
4539
4566
|
country="USA",
|
4540
4567
|
),
|
4541
|
-
"Scheels Center, Fargo, North Dakota":
|
4542
|
-
city="Fargo",
|
4543
|
-
state="ND",
|
4544
|
-
postal="",
|
4545
|
-
lat=46.900442,
|
4546
|
-
lng=-96.799025,
|
4547
|
-
housenumber="1600",
|
4548
|
-
country="USA",
|
4549
|
-
),
|
4568
|
+
"Scheels Center, Fargo, North Dakota": SCHEELS_ARENA,
|
4550
4569
|
"Findlay Toyota Court at Walkup Skydome, Flagstaff, Arizona": WALKUP_SKYDOME,
|
4551
4570
|
"Sanford Coyote Sports Center, Vermillon, South Dakota": SportsballGeocodeTuple(
|
4552
4571
|
city="Vermillon",
|
@@ -6306,15 +6325,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
6306
6325
|
housenumber="",
|
6307
6326
|
country="USA",
|
6308
6327
|
),
|
6309
|
-
"Finneran Pavilion, Villanova, Pennsylvania":
|
6310
|
-
city="Villanova",
|
6311
|
-
state="PA",
|
6312
|
-
postal="19085",
|
6313
|
-
lat=40.034072,
|
6314
|
-
lng=-75.336553,
|
6315
|
-
housenumber="",
|
6316
|
-
country="USA",
|
6317
|
-
),
|
6328
|
+
"Finneran Pavilion, Villanova, Pennsylvania": FINNERAN_PAVILION,
|
6318
6329
|
"Allen Fieldhouse, Lawrence, Kansas": SportsballGeocodeTuple(
|
6319
6330
|
city="Lawrence",
|
6320
6331
|
state="KS",
|
@@ -7033,15 +7044,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
7033
7044
|
housenumber="1800",
|
7034
7045
|
country="USA",
|
7035
7046
|
),
|
7036
|
-
"Memorial Coliseum - Portland, Oregon - United States":
|
7037
|
-
city="Portland",
|
7038
|
-
state="OR",
|
7039
|
-
postal="",
|
7040
|
-
lat=45.532,
|
7041
|
-
lng=-122.669,
|
7042
|
-
housenumber="300",
|
7043
|
-
country="USA",
|
7044
|
-
),
|
7047
|
+
"Memorial Coliseum - Portland, Oregon - United States": MEMORIAL_COLISEUM,
|
7045
7048
|
"McNichols Sports Arena": MCNICHOLS_SPORTS_ARENA,
|
7046
7049
|
"Kemper Arena": SportsballGeocodeTuple(
|
7047
7050
|
city="Kansas City",
|
@@ -12462,6 +12465,100 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
12462
12465
|
country="USA",
|
12463
12466
|
),
|
12464
12467
|
"CONSOL Enegery Center, Pittsburgh, Pennsylvania": PPG_PAINTS_ARENA,
|
12468
|
+
"Chase Center - San Francisco, California, USA - United States": CHASE_CENTER,
|
12469
|
+
"San Marcos, Texas": SportsballGeocodeTuple(
|
12470
|
+
city="San Marcos",
|
12471
|
+
state="TX",
|
12472
|
+
postal="",
|
12473
|
+
lat=29.879444,
|
12474
|
+
lng=-97.938889,
|
12475
|
+
housenumber="",
|
12476
|
+
country="USA",
|
12477
|
+
),
|
12478
|
+
"Retriever Activities Center, Baltimore, Maryland": SportsballGeocodeTuple(
|
12479
|
+
city="Baltimore",
|
12480
|
+
state="MD",
|
12481
|
+
postal="21250",
|
12482
|
+
lat=39.2528994,
|
12483
|
+
lng=-76.712267,
|
12484
|
+
housenumber="1000",
|
12485
|
+
country="USA",
|
12486
|
+
),
|
12487
|
+
"Memorial Coliseum, Portland, Oregon": MEMORIAL_COLISEUM,
|
12488
|
+
"Charles L. Sewall Center, Coraopolis, Pennsylvania": SportsballGeocodeTuple(
|
12489
|
+
city="Coraopolis",
|
12490
|
+
state="PA",
|
12491
|
+
postal="",
|
12492
|
+
lat=40.520212,
|
12493
|
+
lng=-80.21476,
|
12494
|
+
housenumber="",
|
12495
|
+
country="USA",
|
12496
|
+
),
|
12497
|
+
"The Pavilion, Villanova, Pennsylvania": FINNERAN_PAVILION,
|
12498
|
+
"Scheels Arena, Fargo, North Dakota": SCHEELS_ARENA,
|
12499
|
+
"DakotaDome , Vermillion, South Dakota": SportsballGeocodeTuple(
|
12500
|
+
city="Vermillion",
|
12501
|
+
state="SD",
|
12502
|
+
postal="",
|
12503
|
+
lat=42.791111,
|
12504
|
+
lng=-96.927778,
|
12505
|
+
housenumber="1101",
|
12506
|
+
country="USA",
|
12507
|
+
),
|
12508
|
+
"Benjamin Johnson Arena, Spartanburg, South Carolina": SportsballGeocodeTuple(
|
12509
|
+
city="Spartanburg",
|
12510
|
+
state="SC",
|
12511
|
+
postal="",
|
12512
|
+
lat=34.960278,
|
12513
|
+
lng=-81.932778,
|
12514
|
+
housenumber="",
|
12515
|
+
country="USA",
|
12516
|
+
),
|
12517
|
+
"Hartford, Connecticut": SportsballGeocodeTuple(
|
12518
|
+
city="Hartford",
|
12519
|
+
state="CT",
|
12520
|
+
postal="",
|
12521
|
+
lat=41.7625,
|
12522
|
+
lng=-72.674167,
|
12523
|
+
housenumber="",
|
12524
|
+
country="USA",
|
12525
|
+
),
|
12526
|
+
"Quest MultiSport, Chicago, Illinois": SportsballGeocodeTuple(
|
12527
|
+
city="Chicago",
|
12528
|
+
state="IL",
|
12529
|
+
postal="60612",
|
12530
|
+
lat=41.8733479,
|
12531
|
+
lng=-87.6923655,
|
12532
|
+
housenumber="2641",
|
12533
|
+
country="USA",
|
12534
|
+
),
|
12535
|
+
"ICI Center (Embry-Riddle), Daytona Beach, Florida": SportsballGeocodeTuple(
|
12536
|
+
city="Daytona Beach",
|
12537
|
+
state="FL",
|
12538
|
+
postal="32114",
|
12539
|
+
lat=29.1886,
|
12540
|
+
lng=-81.0487,
|
12541
|
+
housenumber="1",
|
12542
|
+
country="USA",
|
12543
|
+
),
|
12544
|
+
"South Point Arena, Las Vegas, Nevada": SportsballGeocodeTuple(
|
12545
|
+
city="Las Vegas",
|
12546
|
+
state="NV",
|
12547
|
+
postal="89183",
|
12548
|
+
lat=36.0112358,
|
12549
|
+
lng=-115.1752286,
|
12550
|
+
housenumber="9777",
|
12551
|
+
country="USA",
|
12552
|
+
),
|
12553
|
+
"Abrams Physical Fitness Center, Fort Hood, Texas": SportsballGeocodeTuple(
|
12554
|
+
city="Fort Hood",
|
12555
|
+
state="TX",
|
12556
|
+
postal="76544",
|
12557
|
+
lat=31.1382238,
|
12558
|
+
lng=-97.7772131,
|
12559
|
+
housenumber="",
|
12560
|
+
country="USA",
|
12561
|
+
),
|
12465
12562
|
}
|
12466
12563
|
|
12467
12564
|
|
@@ -8,7 +8,14 @@ from .loglevel import LogLevel
|
|
8
8
|
|
9
9
|
def setup_logger() -> None:
|
10
10
|
"""Setup the logger to perform the required logging."""
|
11
|
-
logging.basicConfig(
|
11
|
+
logging.basicConfig(
|
12
|
+
filename="sportsball.log", # Specify the log file name
|
13
|
+
filemode="w", # 'a' for append, 'w' to overwrite
|
14
|
+
encoding="utf-8", # Optional, specify encoding
|
15
|
+
level=logging.INFO, # Set the logging level
|
16
|
+
format="%(asctime)s - %(levelname)s - %(message)s", # Define the log message format
|
17
|
+
datefmt="%Y-%m-%d %H:%M:%S", # Define the date and time format
|
18
|
+
)
|
12
19
|
logger = logging.getLogger()
|
13
20
|
args = parse_args()
|
14
21
|
match args.loglevel:
|
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.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_game_model.py
RENAMED
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_league_model.py
RENAMED
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_player_model.py
RENAMED
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/afl/afltables/afl_afltables_team_model.py
RENAMED
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/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.51 → sportsball-0.3.53}/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.51 → sportsball-0.3.53}/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
|
File without changes
|
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nba/sportsdb/nba_sportsdb_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
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaab/espn/ncaab_espn_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
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/ncaaf/espn/ncaaf_espn_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
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/combined/nfl_combined_league_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/nfl/sportsdb/nfl_sportsdb_league_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_bookie_model.py
RENAMED
File without changes
|
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_league_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/oddsportal/oddsportal_venue_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
|
{sportsball-0.3.51 → sportsball-0.3.53}/sportsball/data/weather/openmeteo/openmeteo_weather_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
|
{sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/afl_afltables_game_model_test.py
RENAMED
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/afl_afltables_league_model_test.py
RENAMED
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/tests/data/afl/afltables/afl_afltables_player_model_test.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
|
{sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nba/sportsdb/nba_sportsdb_league_model_test.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
|
{sportsball-0.3.51 → sportsball-0.3.53}/tests/data/nfl/sportsdb/nfl_sportsdb_league_model_test.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.51 → sportsball-0.3.53}/tests/data/oddsportal/oddsportal_league_model_test.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
|