sportradar-api 0.18.1 → 0.19.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 87396dd744b5483dc483ad40a2210588cfb0740a4492b95925c2bba0281428a6
4
- data.tar.gz: e0ba45d5bf6a6fcf0bbd9d935c6fe798bd373bb1521422e5116394b4f3d67933
3
+ metadata.gz: 8dc7fd8b3ea2527e80d2450060864338619def6cefdfc95a9bc9dcf1a4f9b52b
4
+ data.tar.gz: 9ef4960b1876828a908f89e48974ba72e69460094b4b763463fc23e0cb5fb538
5
5
  SHA512:
6
- metadata.gz: 2d7af40902d848873622e44b07ba6d67885e080edca30648965be1193d2b0c12bc66f35258a6a7f5808de09d4f0cce5ae1afef725049d0149795ee23ba4633c2
7
- data.tar.gz: da5f6b58bc802ca07951a31b53e91ad1f13b51bca5246bf244ec9d90b2d570e9103a49d407600a8c569292275be67b3d0afc91143276393ce78c510eea68e989
6
+ metadata.gz: 593bbf87290172584b6ae110f8e06576ea5d44eee653d02b78d2810f4598fec2da9f9b2506ddc40811a3effefc8190080476b2d8a7febbf908724a2e46cdd20a
7
+ data.tar.gz: bf275cbedcf92089994c9882903780882dee634f65e7abe0fd0a3f1f0b85052f6d9efec0d07761acb460c750a7d36f1c76f6096f261f10821c1b8c5913de3523
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sportradar-api (0.18.1)
4
+ sportradar-api (0.19.0)
5
5
  activesupport
6
6
  httparty (>= 0.14.0)
7
7
 
@@ -20,7 +20,7 @@ module Sportradar
20
20
 
21
21
  @teams_hash = {}
22
22
  @team_stats = {}
23
- @player_stats = {}
23
+ @player_stats = StatsShim.new(self)
24
24
 
25
25
  @quarters_hash = {}
26
26
  @drives_hash = {}
@@ -394,6 +394,10 @@ module Sportradar
394
394
  ingest_statistics(data)
395
395
  end
396
396
 
397
+ def get_summary
398
+ get_statistics
399
+ end
400
+
397
401
  def queue_statistics
398
402
  url, headers, options, timeout = api.get_request_info(path_statistics)
399
403
  {url: url, headers: headers, params: options, timeout: timeout, callback: method(:ingest_statistics)}
@@ -29,6 +29,10 @@ module Sportradar
29
29
  @return_yards = data.dig('summary', "return_yards")
30
30
  end
31
31
 
32
+ def dig(*args)
33
+ args.inject(self) { |memo, arg| memo.public_send(arg) }
34
+ end
35
+
32
36
  def turnovers
33
37
  @turnovers || passing.interceptions + fumbles&.lost_fumbles.to_i
34
38
  end
@@ -22,9 +22,9 @@ module Sportradar
22
22
  end
23
23
  def default_access_level
24
24
  if (ENV['SPORTRADAR_ENV'] || ENV['SPORTRADAR_ENV_NFL'] || ENV['RACK_ENV'] || ENV['RAILS_ENV']) == 'production'
25
- 'o'
25
+ 'production'
26
26
  else
27
- 'ot'
27
+ 'trial'
28
28
  end
29
29
  end
30
30
 
@@ -35,11 +35,11 @@ module Sportradar
35
35
  end
36
36
 
37
37
  def request_url(path)
38
- "/nfl-#{access_level}#{version}/#{path}"
38
+ "/nfl/official/#{access_level}/v#{version}/en/#{path}"
39
39
  end
40
40
 
41
41
  def api_key
42
- if !['ot', 'sim'].include?(access_level) || (access_level == 'sim' && default_access_level == 'o')
42
+ if !['trial', 'sim'].include?(access_level) || (access_level == 'sim' && default_access_level == 'production')
43
43
  ::Sportradar::Api.api_key_params('nfl', 'production')
44
44
  else
45
45
  ::Sportradar::Api.api_key_params('nfl')
@@ -51,7 +51,7 @@ module Sportradar
51
51
  end
52
52
 
53
53
  def allowed_access_levels
54
- %w[rt o p s b t ot sim]
54
+ %w[production trial sim]
55
55
  end
56
56
 
57
57
  def allowed_seasons
@@ -159,13 +159,13 @@ module Sportradar
159
159
  "games/#{season_year}/#{nfl_season}/#{nfl_season_week}/schedule"
160
160
  end
161
161
  def path_weekly_depth_charts(nfl_season_week)
162
- "seasontd/#{season_year}/#{nfl_season}/#{nfl_season_week}/depth_charts"
162
+ "seasons/#{season_year}/#{nfl_season}/#{nfl_season_week}/depth_charts"
163
163
  end
164
164
  def path_weekly_depth_injuries(nfl_season_week)
165
- "seasontd/#{season_year}/#{nfl_season}/#{nfl_season_week}/injuries"
165
+ "seasons/#{season_year}/#{nfl_season}/#{nfl_season_week}/injuries"
166
166
  end
167
167
  def path_standings
168
- "seasontd/#{season_year}/standings"
168
+ "seasons/#{season_year}/standings"
169
169
  end
170
170
 
171
171
  # data retrieval
@@ -320,4 +320,14 @@ File.binwrite('nfl.bin', Marshal.dump(nfl))
320
320
  nfl = Sportradar::Api::Football::Nfl.new
321
321
  nfl.season = 2016
322
322
  res = nfl.get_weekly_depth_charts
323
- dc = nfl.instance_variable_get(:@depth_charts_hash)
323
+ dc = nfl.instance_variable_get(:@depth_charts_hash)
324
+
325
+
326
+ nfl = Sportradar::Api::Football::Nfl.new
327
+ nfl.season = 2021
328
+ nfl.get_schedule
329
+ g = nfl.games.sample
330
+ data = g.get_statistics
331
+ g.team_stats
332
+ g.team_stats.values.first.dig('rushing', 'yards')
333
+
@@ -15,6 +15,10 @@ module Sportradar
15
15
  set_stats
16
16
  end
17
17
 
18
+ def for_player(id)
19
+ @players && @players.detect { |stat| stat.player.id == id }
20
+ end
21
+
18
22
  private
19
23
 
20
24
  def set_stats
@@ -1,3 +1,4 @@
1
+ require "sportradar/api/football/stats_shim"
1
2
  require "sportradar/api/football/stat_pack"
2
3
  require "sportradar/api/football/stat_pack/defense"
3
4
  require "sportradar/api/football/stat_pack/extra_points"
@@ -30,8 +30,6 @@ module Sportradar
30
30
  def update(data, **opts)
31
31
  create_data(@player_props_hash, data['players_props'], klass: PlayerProp, api: api) if data['players_props']
32
32
  create_data(@player_markets_hash, data['players_markets'], klass: Market, api: api) if data['players_markets']
33
- rescue => e
34
- binding.pry
35
33
  end
36
34
 
37
35
  end
@@ -1,5 +1,5 @@
1
1
  module Sportradar
2
2
  module Api
3
- VERSION = "0.18.1"
3
+ VERSION = "0.19.0"
4
4
  end
5
5
  end
@@ -50,7 +50,7 @@ module Sportradar
50
50
  module Api
51
51
 
52
52
  API_GALLERY = [
53
- {api: :nfl, version: 1},
53
+ {api: :nfl, version: 7},
54
54
  {api: :mlb, version: 7},
55
55
  {api: :nhl, version: 3},
56
56
  {api: :nba, version: 7},
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sportradar-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.1
4
+ version: 0.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Eggett
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-29 00:00:00.000000000 Z
11
+ date: 2022-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler