sportsball 0.3.14__tar.gz → 0.3.15__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.
Files changed (183) hide show
  1. {sportsball-0.3.14/sportsball.egg-info → sportsball-0.3.15}/PKG-INFO +2 -1
  2. {sportsball-0.3.14 → sportsball-0.3.15}/README.md +1 -0
  3. {sportsball-0.3.14 → sportsball-0.3.15}/setup.py +1 -1
  4. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/__init__.py +1 -1
  5. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/afltables/afl_afltables_game_model.py +1 -0
  6. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/aussportsbetting_game_model.py +7 -0
  7. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/aussportsbetting_league_model.py +8 -2
  8. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_game_model.py +5 -0
  9. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_game_model.py +1 -0
  10. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/game_model.py +2 -0
  11. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/nba/nba_nba_game_model.py +1 -0
  12. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsdb/sportsdb_game_model.py +1 -0
  13. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsreference/sportsreference_game_model.py +1 -2
  14. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/proxy_session.py +6 -1
  15. {sportsball-0.3.14 → sportsball-0.3.15/sportsball.egg-info}/PKG-INFO +2 -1
  16. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/aussportsbetting/aussportsbetting_game_model_test.py +1 -0
  17. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/combined/combined_game_model_test.py +1 -0
  18. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/game_model_test.py +2 -1
  19. {sportsball-0.3.14 → sportsball-0.3.15}/LICENSE +0 -0
  20. {sportsball-0.3.14 → sportsball-0.3.15}/MANIFEST.in +0 -0
  21. {sportsball-0.3.14 → sportsball-0.3.15}/requirements.txt +0 -0
  22. {sportsball-0.3.14 → sportsball-0.3.15}/setup.cfg +0 -0
  23. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/__main__.py +0 -0
  24. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/args.py +0 -0
  25. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/cache.py +0 -0
  26. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/__init__.py +0 -0
  27. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/address_model.py +0 -0
  28. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/__init__.py +0 -0
  29. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/afltables/__init__.py +0 -0
  30. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/afltables/afl_afltables_league_model.py +0 -0
  31. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/afltables/afl_afltables_player_model.py +0 -0
  32. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/afltables/afl_afltables_team_model.py +0 -0
  33. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/afltables/afl_afltables_venue_model.py +0 -0
  34. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/aussportsbetting/__init__.py +0 -0
  35. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/aussportsbetting/afl_aussportsbetting_league_model.py +0 -0
  36. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/combined/__init__.py +0 -0
  37. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/combined/afl_combined_league_model.py +0 -0
  38. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/espn/__init__.py +0 -0
  39. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/afl/espn/afl_espn_league_model.py +0 -0
  40. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/__init__.py +0 -0
  41. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/aussportsbetting_bookie_model.py +0 -0
  42. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/aussportsbetting_odds_model.py +0 -0
  43. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/aussportsbetting_team_model.py +0 -0
  44. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/aussportsbetting/aussportsbetting_venue_model.py +0 -0
  45. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/bookie_model.py +0 -0
  46. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/__init__.py +0 -0
  47. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_address_model.py +0 -0
  48. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_league_model.py +0 -0
  49. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_player_model.py +0 -0
  50. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_team_model.py +0 -0
  51. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_venue_model.py +0 -0
  52. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/combined/combined_weather_model.py +0 -0
  53. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/__init__.py +0 -0
  54. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_bookie_model.py +0 -0
  55. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_league_model.py +0 -0
  56. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_odds_model.py +0 -0
  57. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_player_model.py +0 -0
  58. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_team_model.py +0 -0
  59. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/espn/espn_venue_model.py +0 -0
  60. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/field_type.py +0 -0
  61. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/google/__init__.py +0 -0
  62. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/google/google_address_model.py +0 -0
  63. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/google/google_news_model.py +0 -0
  64. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/league.py +0 -0
  65. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/league_model.py +0 -0
  66. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/model.py +0 -0
  67. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/__init__.py +0 -0
  68. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/combined/__init__.py +0 -0
  69. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/combined/nba_combined_league_model.py +0 -0
  70. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/espn/__init__.py +0 -0
  71. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/espn/nba_espn_league_model.py +0 -0
  72. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/nba/__init__.py +0 -0
  73. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/nba/nba_nba_league_model.py +0 -0
  74. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/nba/nba_nba_player_model.py +0 -0
  75. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/nba/nba_nba_team_model.py +0 -0
  76. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/sportsdb/__init__.py +0 -0
  77. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/sportsdb/nba_sportsdb_league_model.py +0 -0
  78. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/sportsreference/__init__.py +0 -0
  79. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nba/sportsreference/nba_sportsreference_league_model.py +0 -0
  80. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/__init__.py +0 -0
  81. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/combined/__init__.py +0 -0
  82. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/combined/ncaab_combined_league_model.py +0 -0
  83. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/espn/__init__.py +0 -0
  84. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/espn/ncaab_espn_league_model.py +0 -0
  85. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/sportsreference/__init__.py +0 -0
  86. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaab/sportsreference/ncaab_sportsreference_league_model.py +0 -0
  87. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaaf/__init__.py +0 -0
  88. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaaf/espn/__init__.py +0 -0
  89. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/ncaaf/espn/ncaaf_espn_league_model.py +0 -0
  90. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/news_model.py +0 -0
  91. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/__init__.py +0 -0
  92. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/aussportsbetting/__init__.py +0 -0
  93. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/aussportsbetting/nfl_aussportsbetting_league_model.py +0 -0
  94. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/combined/__init__.py +0 -0
  95. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/combined/nfl_combined_league_model.py +0 -0
  96. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/espn/__init__.py +0 -0
  97. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/espn/nfl_espn_league_model.py +0 -0
  98. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/sportsdb/__init__.py +0 -0
  99. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/nfl/sportsdb/nfl_sportsdb_league_model.py +0 -0
  100. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/odds_model.py +0 -0
  101. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/player_model.py +0 -0
  102. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/season_type.py +0 -0
  103. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/social_model.py +0 -0
  104. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsdb/__init__.py +0 -0
  105. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsdb/sportsdb_league_model.py +0 -0
  106. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsdb/sportsdb_team_model.py +0 -0
  107. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsdb/sportsdb_venue_model.py +0 -0
  108. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsreference/__init__.py +0 -0
  109. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsreference/sportsreference_league_model.py +0 -0
  110. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsreference/sportsreference_player_model.py +0 -0
  111. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsreference/sportsreference_team_model.py +0 -0
  112. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/sportsreference/sportsreference_venue_model.py +0 -0
  113. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/team_model.py +0 -0
  114. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/venue_model.py +0 -0
  115. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather/__init__.py +0 -0
  116. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather/gribstream/__init__.py +0 -0
  117. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather/gribstream/gribstream_weather_model.py +0 -0
  118. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather/multi_weather_model.py +0 -0
  119. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather/openmeteo/__init__.py +0 -0
  120. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather/openmeteo/openmeteo_weather_model.py +0 -0
  121. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/weather_model.py +0 -0
  122. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/wikipedia/__init__.py +0 -0
  123. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/wikipedia/wikipedia_venue_model.py +0 -0
  124. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/x/__init__.py +0 -0
  125. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/data/x/x_social_model.py +0 -0
  126. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/logger.py +0 -0
  127. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/loglevel.py +0 -0
  128. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/session.py +0 -0
  129. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball/sportsball.py +0 -0
  130. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball.egg-info/SOURCES.txt +0 -0
  131. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball.egg-info/dependency_links.txt +0 -0
  132. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball.egg-info/entry_points.txt +0 -0
  133. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball.egg-info/not-zip-safe +0 -0
  134. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball.egg-info/requires.txt +0 -0
  135. {sportsball-0.3.14 → sportsball-0.3.15}/sportsball.egg-info/top_level.txt +0 -0
  136. {sportsball-0.3.14 → sportsball-0.3.15}/tests/__init__.py +0 -0
  137. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/__init__.py +0 -0
  138. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/afl/__init__.py +0 -0
  139. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/afl/afltables/__init__.py +0 -0
  140. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/afl/afltables/afl_afltables_player_model_test.py +0 -0
  141. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/aussportsbetting/__init__.py +0 -0
  142. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/combined/__init__.py +0 -0
  143. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/combined/combined_player_model_test.py +0 -0
  144. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/espn/__init__.py +0 -0
  145. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/espn/espn_game_model_test.py +0 -0
  146. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/espn/espn_player_model_test.py +0 -0
  147. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/google/__init__.py +0 -0
  148. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/google/google_address_model_test.py +0 -0
  149. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/google/google_news_model_test.py +0 -0
  150. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/__init__.py +0 -0
  151. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/nba/__init__.py +0 -0
  152. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/nba/nba_nba_game_model_test.py +0 -0
  153. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/nba/nba_nba_league_model_test.py +0 -0
  154. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/nba/nba_nba_player_model_test.py +0 -0
  155. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/nba/nba_nba_team_model_test.py +0 -0
  156. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/sportsdb/__init__.py +0 -0
  157. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/sportsdb/nba_sportsdb_league_model_test.py +0 -0
  158. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/sportsreference/__init__.py +0 -0
  159. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nba/sportsreference/nba_sportsreference_league_model_test.py +0 -0
  160. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/ncaab/__init__.py +0 -0
  161. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/ncaab/sportsreference/__init__.py +0 -0
  162. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/ncaab/sportsreference/ncaab_sportsreference_league_model_test.py +0 -0
  163. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nfl/__init__.py +0 -0
  164. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nfl/sportsdb/__init__.py +0 -0
  165. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/nfl/sportsdb/nfl_sportsdb_league_model_test.py +0 -0
  166. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/player_model_test.py +0 -0
  167. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/social_model_test.py +0 -0
  168. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsdb/__init__.py +0 -0
  169. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsdb/sportsdb_game_model_test.py +0 -0
  170. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsdb/sportsdb_league_model_test.py +0 -0
  171. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsdb/sportsdb_team_model_test.py +0 -0
  172. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsdb/sportsdb_venue_model_test.py +0 -0
  173. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsreference/__init__.py +0 -0
  174. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsreference/sportsreference_game_model_test.py +0 -0
  175. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsreference/sportsreference_league_model_test.py +0 -0
  176. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsreference/sportsreference_player_model_test.py +0 -0
  177. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsreference/sportsreference_team_model_test.py +0 -0
  178. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/sportsreference/sportsreference_venue_model_test.py +0 -0
  179. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/team_model_test.py +0 -0
  180. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/x/__init__.py +0 -0
  181. {sportsball-0.3.14 → sportsball-0.3.15}/tests/data/x/x_social_model_test.py +0 -0
  182. {sportsball-0.3.14 → sportsball-0.3.15}/tests/proxy_session_test.py +0 -0
  183. {sportsball-0.3.14 → sportsball-0.3.15}/tests/sportsball_test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sportsball
3
- Version: 0.3.14
3
+ Version: 0.3.15
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
@@ -145,6 +145,7 @@ A representation of the game within a season.
145
145
  * **year** The year the game was in.
146
146
  * **season_type**: The type of the season the game was played in.
147
147
  * **postponed**: Whether the game was postponed.
148
+ * **playoff**: Whether the game was a playoff game.
148
149
 
149
150
  #### Team
150
151
 
@@ -92,6 +92,7 @@ A representation of the game within a season.
92
92
  * **year** The year the game was in.
93
93
  * **season_type**: The type of the season the game was played in.
94
94
  * **postponed**: Whether the game was postponed.
95
+ * **playoff**: Whether the game was a playoff game.
95
96
 
96
97
  #### Team
97
98
 
@@ -23,7 +23,7 @@ def install_requires() -> typing.List[str]:
23
23
 
24
24
  setup(
25
25
  name='sportsball',
26
- version='0.3.14',
26
+ version='0.3.15',
27
27
  description='A library for pulling in and normalising sports stats.',
28
28
  long_description=long_description,
29
29
  long_description_content_type='text/markdown',
@@ -1,3 +1,3 @@
1
1
  """The main module for sportsball."""
2
2
 
3
- __VERSION__ = "0.3.14"
3
+ __VERSION__ = "0.3.15"
@@ -222,6 +222,7 @@ def _create_afl_afltables_game_model(
222
222
  year=season_year,
223
223
  season_type=season_type,
224
224
  postponed=None,
225
+ play_off=None,
225
226
  )
226
227
 
227
228
 
@@ -24,6 +24,7 @@ def _create_aussportsbetting_game_model(
24
24
  home_odds: float,
25
25
  away_odds: float,
26
26
  league: League,
27
+ play_off: bool,
27
28
  ) -> GameModel:
28
29
  venue_model = None
29
30
  if venue is not None:
@@ -46,6 +47,7 @@ def _create_aussportsbetting_game_model(
46
47
  year=None,
47
48
  season_type=None,
48
49
  postponed=None,
50
+ play_off=play_off,
49
51
  )
50
52
 
51
53
 
@@ -61,6 +63,7 @@ def _cached_create_aussportsbetting_game_model(
61
63
  home_odds: float,
62
64
  away_odds: float,
63
65
  league: League,
66
+ play_off: bool,
64
67
  ) -> GameModel:
65
68
  return _create_aussportsbetting_game_model(
66
69
  dt,
@@ -73,6 +76,7 @@ def _cached_create_aussportsbetting_game_model(
73
76
  home_odds,
74
77
  away_odds,
75
78
  league,
79
+ play_off,
76
80
  )
77
81
 
78
82
 
@@ -87,6 +91,7 @@ def create_aussportsbetting_game_model(
87
91
  home_odds: float,
88
92
  away_odds: float,
89
93
  league: League,
94
+ play_off: bool,
90
95
  ) -> GameModel:
91
96
  """Create a game model based off aus sports betting."""
92
97
  if not pytest_is_running.is_running() and dt < datetime.datetime.now().replace(
@@ -103,6 +108,7 @@ def create_aussportsbetting_game_model(
103
108
  home_odds,
104
109
  away_odds,
105
110
  league,
111
+ play_off,
106
112
  )
107
113
  with session.cache_disabled():
108
114
  return _create_aussportsbetting_game_model(
@@ -116,4 +122,5 @@ def create_aussportsbetting_game_model(
116
122
  home_odds,
117
123
  away_odds,
118
124
  league,
125
+ play_off,
119
126
  )
@@ -57,10 +57,15 @@ class AusSportsBettingLeagueModel(LeagueModel):
57
57
  current_cell_idx += 1
58
58
  away_points = float(row[current_cell_idx].value) # type: ignore
59
59
  current_cell_idx += 1
60
+
60
61
  if self.league == League.NFL:
61
- current_cell_idx += 3
62
+ current_cell_idx += 1
63
+ play_off = row[current_cell_idx].value == "Y"
64
+
65
+ if self.league == League.NFL:
66
+ current_cell_idx += 2
62
67
  else:
63
- current_cell_idx += 5
68
+ current_cell_idx += 4
64
69
  home_odds = float(row[current_cell_idx].value) # type: ignore
65
70
  current_cell_idx += 1
66
71
  if self.league == League.NFL:
@@ -78,6 +83,7 @@ class AusSportsBettingLeagueModel(LeagueModel):
78
83
  home_odds,
79
84
  away_odds,
80
85
  self.league,
86
+ play_off,
81
87
  )
82
88
 
83
89
  @property
@@ -71,6 +71,7 @@ def create_combined_game_model(
71
71
  week = None
72
72
  game_number = None
73
73
  postponed = None
74
+ play_off = None
74
75
  for game_model in game_models:
75
76
  game_model_attendance = game_model.attendance
76
77
  if game_model_attendance is not None:
@@ -93,6 +94,9 @@ def create_combined_game_model(
93
94
  game_model_postponed = game_model.postponed
94
95
  if game_model_postponed is not None:
95
96
  postponed = game_model_postponed
97
+ game_model_play_off = game_model.play_off
98
+ if game_model_play_off is not None:
99
+ play_off = game_model_play_off
96
100
 
97
101
  if full_venue_identity is None and venue_models:
98
102
  for venue_model in venue_models:
@@ -112,4 +116,5 @@ def create_combined_game_model(
112
116
  year=year,
113
117
  season_type=season_type,
114
118
  postponed=postponed,
119
+ play_off=play_off,
115
120
  )
@@ -144,6 +144,7 @@ def _create_espn_game_model(
144
144
  year=year,
145
145
  season_type=season_type,
146
146
  postponed=None,
147
+ play_off=None,
147
148
  )
148
149
 
149
150
 
@@ -22,6 +22,7 @@ GAME_WEEK_COLUMN: Literal["week"] = "week"
22
22
  LEAGUE_COLUMN: Literal["league"] = "league"
23
23
  END_DT_COLUMN: Literal["end_dt"] = "end_dt"
24
24
  POSTPONED_COLUMN: Literal["postponed"] = "postponed"
25
+ PLAY_OFF_COLUMN: Literal["play_off"] = "play_off"
25
26
 
26
27
 
27
28
  def localize(venue: VenueModel | None, dt: datetime.datetime) -> datetime.datetime:
@@ -59,3 +60,4 @@ class GameModel(BaseModel):
59
60
  postponed: bool | None = Field(
60
61
  ..., json_schema_extra={TYPE_KEY: FieldType.LOOKAHEAD}, alias=POSTPONED_COLUMN
61
62
  )
63
+ play_off: bool | None = Field(..., alias=PLAY_OFF_COLUMN)
@@ -54,6 +54,7 @@ def _create_nba_nba_game_model(
54
54
  year=int(season_id[1:]),
55
55
  season_type=_SEASON_TYPE_MAP[season_id[0]],
56
56
  postponed=None,
57
+ play_off=None,
57
58
  )
58
59
 
59
60
 
@@ -65,6 +65,7 @@ def _create_sportsdb_game_model(
65
65
  end_dt=None,
66
66
  attendance=None,
67
67
  postponed=postponed,
68
+ play_off=None,
68
69
  )
69
70
 
70
71
 
@@ -30,8 +30,6 @@ def _create_sportsreference_game_model(
30
30
  # pylint: disable=too-many-branches
31
31
  response = session.get(url)
32
32
  response.raise_for_status()
33
- if not response.from_cache:
34
- time.sleep(6.0)
35
33
  soup = BeautifulSoup(response.text, "html.parser")
36
34
  scorebox_meta_div = soup.find("div", class_="scorebox_meta")
37
35
  if not isinstance(scorebox_meta_div, Tag):
@@ -185,6 +183,7 @@ def _create_sportsreference_game_model(
185
183
  end_dt=None,
186
184
  attendance=None,
187
185
  postponed=None,
186
+ play_off=None,
188
187
  )
189
188
 
190
189
 
@@ -105,7 +105,12 @@ class ProxySession(requests_cache.CachedSession):
105
105
 
106
106
  try:
107
107
  response = self._perform_request(*args, **kwargs)
108
- response.raise_for_status()
108
+ if not response.url.startswith(
109
+ "https://news.google.com/"
110
+ ) and not response.url.startswith(
111
+ "https://historical-forecast-api.open-meteo.com/"
112
+ ):
113
+ response.raise_for_status()
109
114
  if not response.from_cache: # pyright: ignore
110
115
  self._proxies.remove(proxy)
111
116
  self._proxies.insert(0, proxy)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sportsball
3
- Version: 0.3.14
3
+ Version: 0.3.15
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
@@ -145,6 +145,7 @@ A representation of the game within a season.
145
145
  * **year** The year the game was in.
146
146
  * **season_type**: The type of the season the game was played in.
147
147
  * **postponed**: Whether the game was postponed.
148
+ * **playoff**: Whether the game was a playoff game.
148
149
 
149
150
  #### Team
150
151
 
@@ -29,5 +29,6 @@ class TestAusSportsBettingGameModel(unittest.TestCase):
29
29
  1.0,
30
30
  1.0,
31
31
  League.NBA,
32
+ True,
32
33
  )
33
34
  self.assertEqual(game_model.dt, dt)
@@ -32,6 +32,7 @@ class TestCombinedGameModel(unittest.TestCase):
32
32
  year=None,
33
33
  season_type=SeasonType.REGULAR,
34
34
  postponed=True,
35
+ play_off=None,
35
36
  )
36
37
  combined_game_model = create_combined_game_model(
37
38
  [game_model],
@@ -6,7 +6,7 @@ from sportsball.data.game_model import GameModel
6
6
  from sportsball.data.league import League
7
7
 
8
8
 
9
- class TestSocialModel(unittest.TestCase):
9
+ class TestGameModel(unittest.TestCase):
10
10
 
11
11
  def setUp(self):
12
12
  self._game_model = GameModel(
@@ -21,6 +21,7 @@ class TestSocialModel(unittest.TestCase):
21
21
  year=None,
22
22
  season_type=None,
23
23
  postponed=True,
24
+ play_off=None,
24
25
  )
25
26
 
26
27
  def test_postponed(self):
File without changes
File without changes
File without changes