stattleship-ruby 0.1.19
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.
- checksums.yaml +7 -0
- data/.gitignore +12 -0
- data/.rspec +2 -0
- data/.rubocop.yml +263 -0
- data/.ruby-version +1 -0
- data/.travis.yml +8 -0
- data/CODE_OF_CONDUCT.md +13 -0
- data/Gemfile +15 -0
- data/LICENSE +1 -0
- data/README.md +75 -0
- data/Rakefile +1 -0
- data/bin/console +7 -0
- data/bin/game_log_officials +32 -0
- data/bin/game_logs +69 -0
- data/bin/games +42 -0
- data/bin/in_progress +19 -0
- data/bin/injuries +18 -0
- data/bin/officials +42 -0
- data/bin/players +45 -0
- data/bin/scoreboard +43 -0
- data/bin/setup +7 -0
- data/bin/stat_leaders +25 -0
- data/bin/team_game_logs +35 -0
- data/bin/teams +29 -0
- data/bin/top_stats +25 -0
- data/bin/total_player_stat +33 -0
- data/bin/total_team_stat +22 -0
- data/examples/README.md +118 -0
- data/examples/baseball_feats.rb +35 -0
- data/examples/baseball_games.rb +32 -0
- data/examples/baseball_player_game_logs.rb +33 -0
- data/examples/baseball_stat_leaders.rb +30 -0
- data/examples/basketball_game_logs.rb +33 -0
- data/examples/basketball_injuries.rb +36 -0
- data/examples/basketball_season_player_performance_rankings.rb +31 -0
- data/examples/basketball_stat_leaders.rb +40 -0
- data/examples/basketball_team_game_logs.rb +38 -0
- data/examples/basketball_top_stats.rb +43 -0
- data/examples/basketball_winning_streaks.rb +27 -0
- data/examples/bears_team_game_logs.rb +46 -0
- data/examples/football_feats.rb +49 -0
- data/examples/football_game_logs.rb +40 -0
- data/examples/football_players.rb +43 -0
- data/examples/football_stats.rb +50 -0
- data/examples/football_total_player_stat.rb +32 -0
- data/examples/hockey_games.rb +56 -0
- data/examples/hockey_penalties.rb +47 -0
- data/examples/hockey_scoring_plays.rb +55 -0
- data/examples/hockey_team_ranked_streaks.rb +27 -0
- data/examples/hockey_teams.rb +54 -0
- data/examples/hockey_total_team_stat.rb +32 -0
- data/examples/sample.env +2 -0
- data/lib/stattleship.rb +117 -0
- data/lib/stattleship/baseball_feats.rb +15 -0
- data/lib/stattleship/baseball_game_logs.rb +159 -0
- data/lib/stattleship/baseball_games.rb +15 -0
- data/lib/stattleship/baseball_injuries.rb +15 -0
- data/lib/stattleship/baseball_penalties.rb +15 -0
- data/lib/stattleship/baseball_players.rb +15 -0
- data/lib/stattleship/baseball_scoring_plays.rb +15 -0
- data/lib/stattleship/baseball_stat_leaders.rb +15 -0
- data/lib/stattleship/baseball_stats.rb +15 -0
- data/lib/stattleship/baseball_team_game_logs.rb +142 -0
- data/lib/stattleship/baseball_team_outcome_streaks.rb +15 -0
- data/lib/stattleship/baseball_teams.rb +15 -0
- data/lib/stattleship/baseball_top_stats.rb +15 -0
- data/lib/stattleship/baseball_total_player_stat.rb +15 -0
- data/lib/stattleship/baseball_total_team_stat.rb +15 -0
- data/lib/stattleship/basketball_feats.rb +15 -0
- data/lib/stattleship/basketball_game_logs.rb +111 -0
- data/lib/stattleship/basketball_games.rb +15 -0
- data/lib/stattleship/basketball_injuries.rb +15 -0
- data/lib/stattleship/basketball_penalties.rb +15 -0
- data/lib/stattleship/basketball_players.rb +15 -0
- data/lib/stattleship/basketball_scoring_plays.rb +15 -0
- data/lib/stattleship/basketball_stat_leaders.rb +15 -0
- data/lib/stattleship/basketball_stats.rb +15 -0
- data/lib/stattleship/basketball_team_game_logs.rb +113 -0
- data/lib/stattleship/basketball_team_outcome_streaks.rb +15 -0
- data/lib/stattleship/basketball_teams.rb +15 -0
- data/lib/stattleship/basketball_top_stats.rb +15 -0
- data/lib/stattleship/basketball_total_player_stat.rb +15 -0
- data/lib/stattleship/basketball_total_team_stat.rb +15 -0
- data/lib/stattleship/client/client.rb +101 -0
- data/lib/stattleship/client/configuration.rb +42 -0
- data/lib/stattleship/endpoint.rb +208 -0
- data/lib/stattleship/feats.rb +150 -0
- data/lib/stattleship/football_feats.rb +15 -0
- data/lib/stattleship/football_game_logs.rb +255 -0
- data/lib/stattleship/football_games.rb +15 -0
- data/lib/stattleship/football_injuries.rb +15 -0
- data/lib/stattleship/football_penalties.rb +15 -0
- data/lib/stattleship/football_players.rb +15 -0
- data/lib/stattleship/football_scoring_plays.rb +15 -0
- data/lib/stattleship/football_stat_leaders.rb +15 -0
- data/lib/stattleship/football_stats.rb +15 -0
- data/lib/stattleship/football_team_game_logs.rb +176 -0
- data/lib/stattleship/football_team_outcome_streaks.rb +15 -0
- data/lib/stattleship/football_teams.rb +15 -0
- data/lib/stattleship/football_top_stats.rb +15 -0
- data/lib/stattleship/football_total_player_stat.rb +15 -0
- data/lib/stattleship/football_total_team_stat.rb +15 -0
- data/lib/stattleship/formatters/stat_formatter.rb +28 -0
- data/lib/stattleship/game_logs.rb +97 -0
- data/lib/stattleship/games.rb +38 -0
- data/lib/stattleship/hockey_feats.rb +15 -0
- data/lib/stattleship/hockey_game_logs.rb +107 -0
- data/lib/stattleship/hockey_games.rb +15 -0
- data/lib/stattleship/hockey_injuries.rb +15 -0
- data/lib/stattleship/hockey_penalties.rb +32 -0
- data/lib/stattleship/hockey_players.rb +15 -0
- data/lib/stattleship/hockey_scoring_plays.rb +15 -0
- data/lib/stattleship/hockey_stat_leaders.rb +15 -0
- data/lib/stattleship/hockey_stats.rb +15 -0
- data/lib/stattleship/hockey_team_game_logs.rb +128 -0
- data/lib/stattleship/hockey_team_outcome_streaks.rb +15 -0
- data/lib/stattleship/hockey_teams.rb +15 -0
- data/lib/stattleship/hockey_top_stats.rb +15 -0
- data/lib/stattleship/hockey_total_player_stat.rb +15 -0
- data/lib/stattleship/hockey_total_team_stat.rb +15 -0
- data/lib/stattleship/injuries.rb +32 -0
- data/lib/stattleship/models.rb +19 -0
- data/lib/stattleship/models/game.rb +360 -0
- data/lib/stattleship/models/injury.rb +22 -0
- data/lib/stattleship/models/league.rb +35 -0
- data/lib/stattleship/models/official.rb +20 -0
- data/lib/stattleship/models/penalty.rb +133 -0
- data/lib/stattleship/models/player.rb +124 -0
- data/lib/stattleship/models/playing_position.rb +17 -0
- data/lib/stattleship/models/ranking.rb +96 -0
- data/lib/stattleship/models/scoring_play.rb +201 -0
- data/lib/stattleship/models/scoring_player.rb +22 -0
- data/lib/stattleship/models/season.rb +18 -0
- data/lib/stattleship/models/team.rb +78 -0
- data/lib/stattleship/models/team_outcome_streak.rb +88 -0
- data/lib/stattleship/models/venue.rb +32 -0
- data/lib/stattleship/params.rb +102 -0
- data/lib/stattleship/params/baseball_feats_params.rb +6 -0
- data/lib/stattleship/params/baseball_game_logs_params.rb +6 -0
- data/lib/stattleship/params/baseball_games_params.rb +6 -0
- data/lib/stattleship/params/baseball_injuries_params.rb +6 -0
- data/lib/stattleship/params/baseball_penalties_params.rb +6 -0
- data/lib/stattleship/params/baseball_players_params.rb +6 -0
- data/lib/stattleship/params/baseball_scoring_plays_params.rb +6 -0
- data/lib/stattleship/params/baseball_stat_leaders_params.rb +6 -0
- data/lib/stattleship/params/baseball_stats_params.rb +6 -0
- data/lib/stattleship/params/baseball_team_game_logs_params.rb +6 -0
- data/lib/stattleship/params/baseball_team_outcome_streaks_params.rb +9 -0
- data/lib/stattleship/params/baseball_team_stats_params.rb +10 -0
- data/lib/stattleship/params/baseball_teams_params.rb +6 -0
- data/lib/stattleship/params/baseball_top_stats_params.rb +6 -0
- data/lib/stattleship/params/baseball_total_player_stat_params.rb +6 -0
- data/lib/stattleship/params/baseball_total_team_stat_params.rb +11 -0
- data/lib/stattleship/params/basketball_feats_params.rb +6 -0
- data/lib/stattleship/params/basketball_game_logs_params.rb +6 -0
- data/lib/stattleship/params/basketball_games_params.rb +6 -0
- data/lib/stattleship/params/basketball_injuries_params.rb +6 -0
- data/lib/stattleship/params/basketball_penalties_params.rb +6 -0
- data/lib/stattleship/params/basketball_players_params.rb +6 -0
- data/lib/stattleship/params/basketball_scoring_plays_params.rb +6 -0
- data/lib/stattleship/params/basketball_stat_leaders_params.rb +6 -0
- data/lib/stattleship/params/basketball_stats_params.rb +6 -0
- data/lib/stattleship/params/basketball_team_game_logs_params.rb +6 -0
- data/lib/stattleship/params/basketball_team_outcome_streaks_params.rb +9 -0
- data/lib/stattleship/params/basketball_team_stats_params.rb +10 -0
- data/lib/stattleship/params/basketball_teams_params.rb +6 -0
- data/lib/stattleship/params/basketball_top_stats_params.rb +6 -0
- data/lib/stattleship/params/basketball_total_player_stat_params.rb +6 -0
- data/lib/stattleship/params/basketball_total_team_stat_params.rb +11 -0
- data/lib/stattleship/params/feats_params.rb +23 -0
- data/lib/stattleship/params/football_feats_params.rb +6 -0
- data/lib/stattleship/params/football_game_logs_params.rb +11 -0
- data/lib/stattleship/params/football_games_params.rb +6 -0
- data/lib/stattleship/params/football_injuries_params.rb +6 -0
- data/lib/stattleship/params/football_penalties_params.rb +6 -0
- data/lib/stattleship/params/football_players_params.rb +6 -0
- data/lib/stattleship/params/football_scoring_plays_params.rb +6 -0
- data/lib/stattleship/params/football_stat_leaders_params.rb +6 -0
- data/lib/stattleship/params/football_stats_params.rb +6 -0
- data/lib/stattleship/params/football_team_game_logs_params.rb +6 -0
- data/lib/stattleship/params/football_team_outcome_streaks_params.rb +9 -0
- data/lib/stattleship/params/football_team_stats_params.rb +10 -0
- data/lib/stattleship/params/football_teams_params.rb +6 -0
- data/lib/stattleship/params/football_top_stats_params.rb +6 -0
- data/lib/stattleship/params/football_total_player_stat_params.rb +6 -0
- data/lib/stattleship/params/football_total_team_stat_params.rb +11 -0
- data/lib/stattleship/params/game_logs_params.rb +13 -0
- data/lib/stattleship/params/game_time_params.rb +17 -0
- data/lib/stattleship/params/games_params.rb +13 -0
- data/lib/stattleship/params/hockey_feats_params.rb +6 -0
- data/lib/stattleship/params/hockey_game_logs_params.rb +6 -0
- data/lib/stattleship/params/hockey_games_params.rb +6 -0
- data/lib/stattleship/params/hockey_injuries_params.rb +6 -0
- data/lib/stattleship/params/hockey_penalties_params.rb +6 -0
- data/lib/stattleship/params/hockey_players_params.rb +6 -0
- data/lib/stattleship/params/hockey_scoring_plays_params.rb +6 -0
- data/lib/stattleship/params/hockey_stat_leaders_params.rb +6 -0
- data/lib/stattleship/params/hockey_stats_params.rb +6 -0
- data/lib/stattleship/params/hockey_team_game_logs_params.rb +6 -0
- data/lib/stattleship/params/hockey_team_outcome_streaks_params.rb +9 -0
- data/lib/stattleship/params/hockey_team_stats_params.rb +10 -0
- data/lib/stattleship/params/hockey_teams_params.rb +6 -0
- data/lib/stattleship/params/hockey_top_stats_params.rb +6 -0
- data/lib/stattleship/params/hockey_total_player_stat_params.rb +6 -0
- data/lib/stattleship/params/hockey_total_team_stat_params.rb +11 -0
- data/lib/stattleship/params/injuries_params.rb +11 -0
- data/lib/stattleship/params/penalties_params.rb +11 -0
- data/lib/stattleship/params/players_params.rb +12 -0
- data/lib/stattleship/params/query_params.rb +50 -0
- data/lib/stattleship/params/rankings_params.rb +15 -0
- data/lib/stattleship/params/scoring_plays_params.rb +12 -0
- data/lib/stattleship/params/stat_leaders_params.rb +17 -0
- data/lib/stattleship/params/stats_params.rb +17 -0
- data/lib/stattleship/params/team_game_logs_params.rb +12 -0
- data/lib/stattleship/params/team_outcome_streaks_params.rb +24 -0
- data/lib/stattleship/params/teams_params.rb +9 -0
- data/lib/stattleship/params/top_stats_params.rb +17 -0
- data/lib/stattleship/params/total_player_stat_params.rb +17 -0
- data/lib/stattleship/params/total_team_stat_params.rb +18 -0
- data/lib/stattleship/penalties.rb +26 -0
- data/lib/stattleship/players.rb +26 -0
- data/lib/stattleship/rankings.rb +51 -0
- data/lib/stattleship/scoring_plays.rb +30 -0
- data/lib/stattleship/stat_leaders.rb +43 -0
- data/lib/stattleship/stats.rb +76 -0
- data/lib/stattleship/team_game_logs.rb +90 -0
- data/lib/stattleship/team_outcome_streaks.rb +28 -0
- data/lib/stattleship/teams.rb +20 -0
- data/lib/stattleship/top_stats.rb +58 -0
- data/lib/stattleship/total_player_stat.rb +37 -0
- data/lib/stattleship/total_team_stat.rb +30 -0
- data/lib/stattleship/validators.rb +33 -0
- data/lib/stattleship/validators/base_validator.rb +117 -0
- data/lib/stattleship/validators/birth_date_validator.rb +9 -0
- data/lib/stattleship/validators/current_validator.rb +9 -0
- data/lib/stattleship/validators/feat_validator.rb +9 -0
- data/lib/stattleship/validators/game_id_validator.rb +9 -0
- data/lib/stattleship/validators/interval_type_validator.rb +9 -0
- data/lib/stattleship/validators/level_up_validator.rb +9 -0
- data/lib/stattleship/validators/level_validator.rb +16 -0
- data/lib/stattleship/validators/on_validator.rb +9 -0
- data/lib/stattleship/validators/outcome_validator.rb +9 -0
- data/lib/stattleship/validators/page_validator.rb +9 -0
- data/lib/stattleship/validators/penalty_validator.rb +9 -0
- data/lib/stattleship/validators/per_page_validator.rb +9 -0
- data/lib/stattleship/validators/place_validator.rb +9 -0
- data/lib/stattleship/validators/player_id_validator.rb +9 -0
- data/lib/stattleship/validators/rank_validator.rb +9 -0
- data/lib/stattleship/validators/ranked_validator.rb +9 -0
- data/lib/stattleship/validators/ranking_validator.rb +9 -0
- data/lib/stattleship/validators/scoring_method_validator.rb +9 -0
- data/lib/stattleship/validators/scoring_type_validator.rb +9 -0
- data/lib/stattleship/validators/season_id_validator.rb +9 -0
- data/lib/stattleship/validators/since_validator.rb +9 -0
- data/lib/stattleship/validators/stat_validator.rb +23 -0
- data/lib/stattleship/validators/status_validator.rb +16 -0
- data/lib/stattleship/validators/streak_length_validator.rb +9 -0
- data/lib/stattleship/validators/team_id_validator.rb +9 -0
- data/lib/stattleship/validators/type_validator.rb +9 -0
- data/lib/stattleship/validators/week_validator.rb +9 -0
- data/lib/stattleship/version.rb +5 -0
- data/sample.env +1 -0
- data/stattleship-ruby.gemspec +33 -0
- metadata +503 -0
@@ -0,0 +1,43 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::BasketballTopStatsParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-team_abbreviation'
|
14
|
+
query_params.stat = 'rebounds_offensive'
|
15
|
+
query_params.type = 'basketball_rebounding_stat'
|
16
|
+
query_params.place = 3
|
17
|
+
|
18
|
+
# fetch will automatically traverse the paginated response links
|
19
|
+
top_stats = Stattleship::BasketballTopStats.fetch(params: query_params)
|
20
|
+
|
21
|
+
# the populated object
|
22
|
+
pp top_stats
|
23
|
+
|
24
|
+
# can access friendly helpers
|
25
|
+
pp top_stats.first.to_sentence
|
26
|
+
|
27
|
+
# "Tyson Chandler had 13 rebounds_offensive in Hawks vs Suns January 23, 2016 at 7:00pm for the first best performance"
|
28
|
+
|
29
|
+
# or, individual attributes
|
30
|
+
top_stats.each do |top_stat|
|
31
|
+
pp "#{top_stat.player.name} - #{top_stat.format_stat(top_stat.stat)} ORB - #{top_stat.place} best performance on #{top_stat.game.short_date}"
|
32
|
+
end
|
33
|
+
|
34
|
+
# "Tyson Chandler - 13 ORB - 1 best performance on 01/23/16"
|
35
|
+
# "Tristan Thompson - 11 ORB - 2 best performance on 12/17/15"
|
36
|
+
# "Andre Drummond - 11 ORB - 2 best performance on 12/11/15"
|
37
|
+
# "Andre Drummond - 11 ORB - 2 best performance on 11/ 3/15"
|
38
|
+
# "Dwight Howard - 10 ORB - 3 best performance on 01/18/16"
|
39
|
+
# "Trevor Booker - 10 ORB - 3 best performance on 12/30/15"
|
40
|
+
# "Ed Davis - 10 ORB - 3 best performance on 11/20/15"
|
41
|
+
# "Greg Monroe - 10 ORB - 3 best performance on 01/15/16"
|
42
|
+
# "Andre Drummond - 10 ORB - 3 best performance on 12/18/15"
|
43
|
+
# "Andre Drummond - 10 ORB - 3 best performance on 11/29/15"
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::BasketballTeamOutcomeStreaksParams.new
|
12
|
+
query_params.current = true
|
13
|
+
query_params.outcome = 'win'
|
14
|
+
|
15
|
+
# fetch will automatically traverse the paginated response links
|
16
|
+
streaks = Stattleship::BasketballTeamOutcomeStreaks.fetch(params: query_params)
|
17
|
+
|
18
|
+
# Atlanta Hawks are currently on a 2 game winning streak starting Mar 12
|
19
|
+
# Golden State Warriors are currently on a 5 game winning streak starting Mar 07
|
20
|
+
# Milwaukee Bucks are currently on a 3 game winning streak starting Mar 09
|
21
|
+
# San Antonio Spurs are currently on a 3 game winning streak starting Mar 08
|
22
|
+
# Utah Jazz are currently on a 3 game winning streak starting Mar 11
|
23
|
+
|
24
|
+
# or, individual attributes
|
25
|
+
streaks.each do |streak|
|
26
|
+
puts streak.to_sentence if streak.streak_length > 1
|
27
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# params = Stattleship::Params::FootballTeamsParams.new
|
11
|
+
|
12
|
+
# team_slugs = Stattleship::FootballTeams.fetch(params: params).map(&:slug)
|
13
|
+
|
14
|
+
# team_slugs.each do |team_slug|
|
15
|
+
# # Construct params for the fetch
|
16
|
+
# query_params = Stattleship::Params::FootballTeamGameLogsParams.new
|
17
|
+
|
18
|
+
# # use a slug, typically 'league-team_abbreviation'
|
19
|
+
# query_params.team_id = team_slug
|
20
|
+
# query_params.interval_type = 'week'
|
21
|
+
# query_params.season_id = 'nfl-2015-2016'
|
22
|
+
|
23
|
+
# # fetch will automatically traverse the paginated response links
|
24
|
+
# game_logs = Stattleship::FootballTeamGameLogs.fetch(params: query_params)
|
25
|
+
|
26
|
+
# game_logs.each do |game_log|
|
27
|
+
# pp "#{game_log.team_name} #{game_log.game.interval}"
|
28
|
+
# end
|
29
|
+
# end
|
30
|
+
|
31
|
+
|
32
|
+
# Construct params for the fetch
|
33
|
+
query_params = Stattleship::Params::FootballTeamGameLogsParams.new
|
34
|
+
|
35
|
+
# use a slug, typically 'league-team_abbreviation'
|
36
|
+
# query_params.team_id = team_slug
|
37
|
+
query_params.interval_type = 'week'
|
38
|
+
query_params.season_id = 'nfl-2015-2016'
|
39
|
+
# query_params.per_page = 51
|
40
|
+
|
41
|
+
# fetch will automatically traverse the paginated response links
|
42
|
+
game_logs = Stattleship::FootballTeamGameLogs.fetch(params: query_params)
|
43
|
+
|
44
|
+
game_logs.each do |game_log|
|
45
|
+
pp "#{game_log.team_name} #{game_log.game.interval}"
|
46
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::FootballFeatsParams.new
|
12
|
+
|
13
|
+
query_params.season_id = 'nfl-2015-2016'
|
14
|
+
|
15
|
+
# use a slug, typically 'league-firstname-lastname'
|
16
|
+
query_params.player_id = 'nfl-cam-newton'
|
17
|
+
query_params.level_up = 2
|
18
|
+
|
19
|
+
# fetch will automatically traverse the paginated response links
|
20
|
+
feats = Stattleship::FootballFeats.fetch(params: query_params)
|
21
|
+
|
22
|
+
# the populated object
|
23
|
+
pp feats.first
|
24
|
+
|
25
|
+
# can access friendly helpers
|
26
|
+
pp feats.first.to_sentence
|
27
|
+
|
28
|
+
# "Cam Newton threw a 59 yard-long pass vs. the Packers on Sunday November 8, 2015 at 1:00pm"
|
29
|
+
|
30
|
+
# or, individual attributes
|
31
|
+
feats.each do |feat|
|
32
|
+
pp "#{feat.actual.to_i} #{feat.name} #{feat.humanized_stat_type} #{feat.vs}"
|
33
|
+
end
|
34
|
+
|
35
|
+
# "59 Cam Newton yard-long pass vs. the Packers"
|
36
|
+
# "55 Cam Newton yard-long pass vs. the Saints"
|
37
|
+
# "74 Cam Newton yard-long pass vs. the Falcons"
|
38
|
+
# "3 Cam Newton touchdowns vs. the Packers"
|
39
|
+
# "3 Cam Newton touchdowns vs. the Falcons"
|
40
|
+
# "5 Cam Newton touchdowns vs. the Redskins"
|
41
|
+
# "5 Cam Newton touchdowns vs. the Saints"
|
42
|
+
# "5 Cam Newton touchdowns vs. the Giants"
|
43
|
+
# "269 Cam Newton passing yards vs. the Seahawks"
|
44
|
+
# "248 Cam Newton passing yards vs. the Colts"
|
45
|
+
# "297 Cam Newton passing yards vs. the Packers"
|
46
|
+
# "246 Cam Newton passing yards vs. the Redskins"
|
47
|
+
# "331 Cam Newton passing yards vs. the Saints"
|
48
|
+
# "265 Cam Newton passing yards vs. the Falcons"
|
49
|
+
# ...
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::FootballGameLogsParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-firstname-lastname'
|
14
|
+
query_params.player_id = 'nfl-cam-newton'
|
15
|
+
|
16
|
+
# may need to adjust this depending on time of year/NFL season
|
17
|
+
query_params.since = '1 month ago'
|
18
|
+
# query_params.interval_type = 'conferencechampionships'
|
19
|
+
# query_params.interval_type = 'divisionalplayoffs'
|
20
|
+
# query_params.interval_type = 'wildcard'
|
21
|
+
# query_params.interval_type = 'week'
|
22
|
+
# query_params.interval_type = 'preseason'
|
23
|
+
|
24
|
+
# fetch will automatically traverse the paginated response links
|
25
|
+
game_logs = Stattleship::FootballGameLogs.fetch(params: query_params)
|
26
|
+
|
27
|
+
# the populated object
|
28
|
+
pp game_logs.first
|
29
|
+
|
30
|
+
# can access friendly helpers
|
31
|
+
pp game_logs.first.to_sentence
|
32
|
+
|
33
|
+
# "Cam Newton 139 RTG, 21 CMP, 293 YDS, 2 TD, 6 R, 10 RYDS, 2 RTD, 12 PTS (Buccaneers vs Panthers January 3, 2016 at 4:25pm)"
|
34
|
+
|
35
|
+
# or, individual attributes
|
36
|
+
game_logs.each do |game_log|
|
37
|
+
pp game_log.passes_touchdowns
|
38
|
+
end
|
39
|
+
|
40
|
+
# 2
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::FootballPlayersParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-team_abbreviation'
|
14
|
+
query_params.team_id = 'nfl-den'
|
15
|
+
|
16
|
+
# fetch will automatically traverse the paginated response links
|
17
|
+
players = Stattleship::FootballPlayers.fetch(params: query_params)
|
18
|
+
|
19
|
+
# the populated object
|
20
|
+
pp players.first
|
21
|
+
|
22
|
+
# can access friendly helpers
|
23
|
+
pp players.first.label
|
24
|
+
|
25
|
+
# "C.J. Anderson (OT) - Broncos"
|
26
|
+
|
27
|
+
# or, individual attributes
|
28
|
+
players.select { |p| p.salary.to_i > 5_000_000 }.
|
29
|
+
sort { |a, b| a[:salary] <=> b[:salary] }.
|
30
|
+
reverse.
|
31
|
+
each do |player|
|
32
|
+
pp "#{player.name} #{player.humanized_salary} #{player.salary_currency} #{player.school}"
|
33
|
+
end
|
34
|
+
|
35
|
+
# "Peyton Manning 17,500,000 USD Tennessee"
|
36
|
+
# "Demaryius Thomas 13,200,000 USD Georgia Tech "
|
37
|
+
# "Ryan Clady 10,600,000 USD Boise State"
|
38
|
+
# "Von Miller 9,754,000 USD Texas A&M"
|
39
|
+
# "Demarcus Ware 8,666,666 USD Troy"
|
40
|
+
# "T.J. Ward 7,514,705 USD Oregon"
|
41
|
+
# "Aqib Talib 6,968,750 USD Kansas"
|
42
|
+
# "Louis Vasquez 6,250,000 USD Texas Tech"
|
43
|
+
# "Emmanuel Sanders 5,850,000 USD Southern Methodist"
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::FootballStatsParams.new
|
12
|
+
|
13
|
+
# the stat must belong to the type, see: http://playbook.stattleship.com/#basketball-stats for a list
|
14
|
+
query_params.player_id = 'nfl-aaron-rodgers'
|
15
|
+
query_params.type = 'football_passing_stat'
|
16
|
+
query_params.stat = 'passes_touchdowns'
|
17
|
+
|
18
|
+
# fetch will automatically traverse the paginated response links
|
19
|
+
stats = Stattleship::FootballStats.fetch(params: query_params)
|
20
|
+
|
21
|
+
# the populated object
|
22
|
+
pp stats.first
|
23
|
+
|
24
|
+
# can access friendly helpers
|
25
|
+
pp stats.first.to_sentence
|
26
|
+
|
27
|
+
# "Aaron Rodgers had 1 passes_touchdowns on Vikings vs Packers January 3, 2016 at 7:30pm"
|
28
|
+
|
29
|
+
# or, individual attributes
|
30
|
+
stats.each do |stat|
|
31
|
+
pp "#{stat.name} threw #{stat.stat.to_i} TD in a #{stat.game.weather_conditions} game"
|
32
|
+
end
|
33
|
+
|
34
|
+
# "Aaron Rodgers threw 1 TD in a cloudy game"
|
35
|
+
# "Aaron Rodgers threw 1 TD in a dome game"
|
36
|
+
# "Aaron Rodgers threw 1 TD in a cloudy game"
|
37
|
+
# "Aaron Rodgers threw 2 TD in a heavy-rain game"
|
38
|
+
# "Aaron Rodgers threw 2 TD in a dome game"
|
39
|
+
# "Aaron Rodgers threw 1 TD in a light-rain game"
|
40
|
+
# "Aaron Rodgers threw 2 TD in a cloudy game"
|
41
|
+
# "Aaron Rodgers threw 2 TD in a sunny game"
|
42
|
+
# "Aaron Rodgers threw 4 TD in a cloudy game"
|
43
|
+
# "Aaron Rodgers threw 0 TD in a partly-cloudy game"
|
44
|
+
# "Aaron Rodgers threw 2 TD in a sunny game"
|
45
|
+
# "Aaron Rodgers threw 2 TD in a sunny game"
|
46
|
+
# "Aaron Rodgers threw 1 TD in a sunny game"
|
47
|
+
# "Aaron Rodgers threw 5 TD in a light-rain game"
|
48
|
+
# "Aaron Rodgers threw 2 TD in a sunny game"
|
49
|
+
# "Aaron Rodgers threw 3 TD in a sunny game"
|
50
|
+
# ...
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::FootballTotalPlayerStatParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-firstname-lastname'
|
14
|
+
query_params.player_id = 'nfl-adrian-peterson'
|
15
|
+
query_params.type = 'football_rushing_stat'
|
16
|
+
query_params.stat = 'rushes_attempts'
|
17
|
+
|
18
|
+
# fetch will automatically traverse the paginated response links
|
19
|
+
total_stat = Stattleship::FootballTotalPlayerStat.fetch(params: query_params)
|
20
|
+
|
21
|
+
# the populated object
|
22
|
+
pp total_stat
|
23
|
+
|
24
|
+
# can access friendly helpers
|
25
|
+
pp total_stat.to_sentence
|
26
|
+
|
27
|
+
# "Adrian Peterson has 327 rushes_attempts"
|
28
|
+
|
29
|
+
# or, individual attributes
|
30
|
+
pp "#{total_stat.player.last_name} weighs #{total_stat.player.weight} #{total_stat.player.unit_of_weight} and had #{total_stat.total.to_i} rushes"
|
31
|
+
|
32
|
+
# "Peterson weighs 220 pounds and had 327 rushes"
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::HockeyGamesParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-team_abbreviation'
|
14
|
+
query_params.team_id = 'nhl-chi'
|
15
|
+
|
16
|
+
# may need to adjust this depending on time of year
|
17
|
+
query_params.status = 'ended'
|
18
|
+
query_params.since = '2 weeks ago'
|
19
|
+
|
20
|
+
# fetch will automatically traverse the paginated response links
|
21
|
+
games = Stattleship::HockeyGames.fetch(params: query_params)
|
22
|
+
|
23
|
+
# the populated object
|
24
|
+
pp games.first
|
25
|
+
|
26
|
+
# can access friendly helpers
|
27
|
+
pp games.first.started_at.strftime('%b %e, %l:%M %p')
|
28
|
+
|
29
|
+
# "Jan 26, 7:30 PM"
|
30
|
+
|
31
|
+
# or, individual attributes
|
32
|
+
games.each do |game|
|
33
|
+
pp game.scoreline
|
34
|
+
pp game.winning_scoreline
|
35
|
+
pp game.losing_scoreline
|
36
|
+
end
|
37
|
+
|
38
|
+
# "Coyotes 2 - Blackhawks 6"
|
39
|
+
# "Blackhawks 6 - Coyotes 2"
|
40
|
+
# "Coyotes 2 - Blackhawks 6"
|
41
|
+
# "Bruins 4 - Blackhawks 6"
|
42
|
+
# "Blackhawks 6 - Bruins 4"
|
43
|
+
# "Bruins 4 - Blackhawks 6"
|
44
|
+
# "Blackhawks 5 - Jets 4"
|
45
|
+
# "Blackhawks 5 - Jets 4"
|
46
|
+
# "Jets 4 - Blackhawks 5"
|
47
|
+
# "Blackhawks 1 - Wild 4"
|
48
|
+
# "Wild 4 - Blackhawks 1"
|
49
|
+
# "Blackhawks 1 - Wild 4"
|
50
|
+
# "Blackhawks 3 - Canucks 2"
|
51
|
+
# "Blackhawks 3 - Canucks 2"
|
52
|
+
# "Canucks 2 - Blackhawks 3"
|
53
|
+
# "Blackhawks 4 - Flames 1"
|
54
|
+
# "Blackhawks 4 - Flames 1"
|
55
|
+
# "Flames 1 - Blackhawks 4"
|
56
|
+
# ...
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::HockeyPenaltiesParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-team_abbreviation'
|
14
|
+
query_params.team_id = 'nhl-buf'
|
15
|
+
|
16
|
+
# may need to adjust this depending on time of year
|
17
|
+
query_params.status = 'ended'
|
18
|
+
query_params.since = '2 weeks ago'
|
19
|
+
|
20
|
+
# fetch will automatically traverse the paginated response links
|
21
|
+
penalties = Stattleship::HockeyPenalties.fetch(params: query_params)
|
22
|
+
|
23
|
+
# the populated object
|
24
|
+
pp penalties.first
|
25
|
+
|
26
|
+
# can access friendly helpers
|
27
|
+
pp penalties.first.to_sentence
|
28
|
+
|
29
|
+
# "Zach Bogosian (Buffalo) - Slashing - 2 minutes - 11:39 of 1P - vs Ottawa 01/26/16"
|
30
|
+
|
31
|
+
# or, individual attributes
|
32
|
+
penalties.each do |penalty|
|
33
|
+
pp penalty.minutes
|
34
|
+
end
|
35
|
+
|
36
|
+
# 2
|
37
|
+
# 5
|
38
|
+
# 2
|
39
|
+
# 2
|
40
|
+
# 2
|
41
|
+
# 2
|
42
|
+
# 2
|
43
|
+
# 2
|
44
|
+
# 2
|
45
|
+
# 2
|
46
|
+
# 4
|
47
|
+
# ...
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# Set your STATTLESHIP_ACCESS_TOKEN from https://www.stattleship.com in the examples/.env file
|
2
|
+
|
3
|
+
require 'dotenv'
|
4
|
+
Dotenv.load
|
5
|
+
|
6
|
+
dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
|
7
|
+
require File.join(dir, 'stattleship')
|
8
|
+
require 'pp'
|
9
|
+
|
10
|
+
# Construct params for the fetch
|
11
|
+
query_params = Stattleship::Params::HockeyScoringPlaysParams.new
|
12
|
+
|
13
|
+
# use a slug, typically 'league-team_abbreviation'
|
14
|
+
query_params.team_id = 'nhl-dal'
|
15
|
+
|
16
|
+
# may need to adjust this depending on time of year
|
17
|
+
query_params.since = 'last month'
|
18
|
+
query_params.status = 'ended'
|
19
|
+
|
20
|
+
# fetch will automatically traverse the paginated response links
|
21
|
+
scoring_plays = Stattleship::HockeyScoringPlays.fetch(params: query_params)
|
22
|
+
|
23
|
+
# the populated object
|
24
|
+
pp scoring_plays.first
|
25
|
+
|
26
|
+
# can access friendly helpers
|
27
|
+
pp scoring_plays.first.to_sentence
|
28
|
+
|
29
|
+
# "Jamie Benn (Valeri Nichushkin, Alex Goligoski) - 02:43 of 2P - vs Calgary 01/25/16"
|
30
|
+
|
31
|
+
# or, individual attributes
|
32
|
+
scoring_plays.each do |scoring_play|
|
33
|
+
pp scoring_play.assists.map(&:player_name)
|
34
|
+
end
|
35
|
+
|
36
|
+
# ["Valeri Nichushkin", "Alex Goligoski"]
|
37
|
+
# ["John Klingberg", "Patrick Sharp"]
|
38
|
+
# ["Antoine Roussel", "Ales Hemsky"]
|
39
|
+
# ["Johnny Oduya"]
|
40
|
+
# ["Patrick Sharp", "John Klingberg"]
|
41
|
+
# ["Cody Eakin", "Jason Spezza"]
|
42
|
+
# ["Mattias Janmark", "Antoine Roussel"]
|
43
|
+
# ["Patrick Sharp", "Valeri Nichushkin"]
|
44
|
+
# ["Mattias Janmark", "Antoine Roussel"]
|
45
|
+
# ["Jamie Benn"]
|
46
|
+
# ["Jamie Benn", "Tyler Seguin"]
|
47
|
+
# ["Travis Moen"]
|
48
|
+
# ["Jason Spezza", "Jason Demers"]
|
49
|
+
# ["Patrick Sharp", "Jason Spezza"]
|
50
|
+
# ["Patrick Sharp", "Mattias Janmark"]
|
51
|
+
# ["Jason Spezza", "Alex Goligoski"]
|
52
|
+
# ["Patrick Sharp", "Jason Spezza"]
|
53
|
+
# ["Radek Faksa", "Travis Moen"]
|
54
|
+
# ["Alex Goligoski", "John Klingberg"]
|
55
|
+
# ...
|