sportradar-api 0.9.24 → 0.9.25
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.env.sample +1 -1
- data/Gemfile.lock +2 -2
- data/README.md +1 -1
- data/lib/sportradar/api.rb +23 -1
- data/lib/sportradar/api/basketball.rb +21 -0
- data/lib/sportradar/api/basketball/bio.rb +33 -0
- data/lib/sportradar/api/basketball/broadcast.rb +15 -0
- data/lib/sportradar/api/basketball/nba.rb +123 -0
- data/lib/sportradar/api/basketball/nba/conference.rb +27 -0
- data/lib/sportradar/api/basketball/nba/division.rb +29 -0
- data/lib/sportradar/api/basketball/nba/game.rb +263 -0
- data/lib/sportradar/api/basketball/nba/hierarchy.rb +46 -0
- data/lib/sportradar/api/basketball/nba/overview.rb +64 -0
- data/lib/sportradar/api/basketball/nba/player.rb +146 -0
- data/lib/sportradar/api/basketball/nba/quarter.rb +51 -0
- data/lib/sportradar/api/basketball/nba/record.rb +34 -0
- data/lib/sportradar/api/basketball/nba/schedule.rb +32 -0
- data/lib/sportradar/api/basketball/nba/scoring.rb +89 -0
- data/lib/sportradar/api/basketball/nba/season.rb +42 -0
- data/lib/sportradar/api/basketball/nba/team.rb +166 -0
- data/lib/sportradar/api/basketball/overview.rb +74 -0
- data/lib/sportradar/api/basketball/play.rb +65 -0
- data/lib/sportradar/api/basketball/plays.rb +38 -0
- data/lib/sportradar/api/basketball/plays/assist.rb +11 -0
- data/lib/sportradar/api/basketball/plays/base.rb +88 -0
- data/lib/sportradar/api/basketball/plays/block.rb +11 -0
- data/lib/sportradar/api/basketball/plays/clear_path_foul.rb +9 -0
- data/lib/sportradar/api/basketball/plays/defensive_three_seconds.rb +8 -0
- data/lib/sportradar/api/basketball/plays/delay.rb +9 -0
- data/lib/sportradar/api/basketball/plays/ejection.rb +9 -0
- data/lib/sportradar/api/basketball/plays/end_period.rb +15 -0
- data/lib/sportradar/api/basketball/plays/flagrant_one.rb +9 -0
- data/lib/sportradar/api/basketball/plays/flagrant_two.rb +9 -0
- data/lib/sportradar/api/basketball/plays/foul.rb +14 -0
- data/lib/sportradar/api/basketball/plays/free_throw_made.rb +20 -0
- data/lib/sportradar/api/basketball/plays/free_throw_miss.rb +20 -0
- data/lib/sportradar/api/basketball/plays/jumpball.rb +9 -0
- data/lib/sportradar/api/basketball/plays/kickball.rb +9 -0
- data/lib/sportradar/api/basketball/plays/lineup_change.rb +9 -0
- data/lib/sportradar/api/basketball/plays/offensive_foul.rb +9 -0
- data/lib/sportradar/api/basketball/plays/official_timeout.rb +9 -0
- data/lib/sportradar/api/basketball/plays/open_inbound.rb +9 -0
- data/lib/sportradar/api/basketball/plays/open_tip.rb +9 -0
- data/lib/sportradar/api/basketball/plays/personal_foul.rb +9 -0
- data/lib/sportradar/api/basketball/plays/rebound.rb +15 -0
- data/lib/sportradar/api/basketball/plays/review.rb +8 -0
- data/lib/sportradar/api/basketball/plays/shooting_foul.rb +9 -0
- data/lib/sportradar/api/basketball/plays/shot_made.rb +21 -0
- data/lib/sportradar/api/basketball/plays/shot_miss.rb +21 -0
- data/lib/sportradar/api/basketball/plays/steal.rb +11 -0
- data/lib/sportradar/api/basketball/plays/team_timeout.rb +9 -0
- data/lib/sportradar/api/basketball/plays/technical_foul.rb +11 -0
- data/lib/sportradar/api/basketball/plays/three_point_made.rb +11 -0
- data/lib/sportradar/api/basketball/plays/three_point_miss.rb +8 -0
- data/lib/sportradar/api/basketball/plays/timeout.rb +15 -0
- data/lib/sportradar/api/basketball/plays/turnover.rb +16 -0
- data/lib/sportradar/api/basketball/plays/tv_timeout.rb +9 -0
- data/lib/sportradar/api/basketball/plays/two_point_made.rb +11 -0
- data/lib/sportradar/api/basketball/plays/two_point_miss.rb +8 -0
- data/lib/sportradar/api/basketball/profile.rb +48 -0
- data/lib/sportradar/api/basketball/season.rb +20 -0
- data/lib/sportradar/api/basketball/venue.rb +53 -0
- data/lib/sportradar/api/data.rb +42 -0
- data/lib/sportradar/api/mma.rb +195 -0
- data/lib/sportradar/api/mma/event.rb +111 -0
- data/lib/sportradar/api/mma/fight.rb +107 -0
- data/lib/sportradar/api/mma/fighter.rb +95 -0
- data/lib/sportradar/api/mma/judge.rb +70 -0
- data/lib/sportradar/api/mma/league.rb +63 -0
- data/lib/sportradar/api/mma/referee.rb +70 -0
- data/lib/sportradar/api/mma/result.rb +68 -0
- data/lib/sportradar/api/mma/roster.rb +72 -0
- data/lib/sportradar/api/mma/schedule.rb +53 -0
- data/lib/sportradar/api/mma/score.rb +83 -0
- data/lib/sportradar/api/mma/venue.rb +72 -0
- data/lib/sportradar/api/ncaafb.rb +185 -0
- data/lib/sportradar/api/ncaafb/drive.rb +89 -0
- data/lib/sportradar/api/ncaafb/game.rb +161 -0
- data/lib/sportradar/api/ncaafb/play.rb +39 -0
- data/lib/sportradar/api/ncaafb/player.rb +61 -0
- data/lib/sportradar/api/ncaafb/quarter.rb +37 -0
- data/lib/sportradar/api/ncaafb/season.rb +71 -0
- data/lib/sportradar/api/ncaafb/team.rb +69 -0
- data/lib/sportradar/api/ncaafb/week.rb +33 -0
- data/lib/sportradar/api/nfl.rb +6 -0
- data/lib/sportradar/api/nfl/conference.rb +2 -1
- data/lib/sportradar/api/request.rb +1 -0
- data/lib/sportradar/api/version.rb +1 -1
- metadata +81 -2
@@ -0,0 +1,69 @@
|
|
1
|
+
module Sportradar
|
2
|
+
module Api
|
3
|
+
class Ncaafb
|
4
|
+
class Team < Data
|
5
|
+
attr_accessor :response, :id, :name, :market
|
6
|
+
|
7
|
+
def initialize(data, **opts)
|
8
|
+
@response = data
|
9
|
+
@api = opts[:api]
|
10
|
+
|
11
|
+
case response
|
12
|
+
when String
|
13
|
+
@id = response
|
14
|
+
when Hash
|
15
|
+
@id = data['id']
|
16
|
+
update(response)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
def full_name
|
20
|
+
(market || name) ? [market, name].join(' ') : id
|
21
|
+
end
|
22
|
+
def update(data)
|
23
|
+
@name = data['name'] if data['name']
|
24
|
+
@market = data['market'] if data['market']
|
25
|
+
@players = parse_players(data['player']) if data['player']
|
26
|
+
end
|
27
|
+
|
28
|
+
def players
|
29
|
+
@players ||= get_roster
|
30
|
+
end
|
31
|
+
alias :roster :players
|
32
|
+
def parse_players(data)
|
33
|
+
@players = parse_into_array_with_options(selector: data, klass: Sportradar::Api::Ncaafb::Player, api: api, team: self)
|
34
|
+
end
|
35
|
+
|
36
|
+
def get_roster
|
37
|
+
data = api.get_data(path_roster)['team']
|
38
|
+
update(data)
|
39
|
+
end
|
40
|
+
|
41
|
+
def path_base
|
42
|
+
"teams/#{ id }"
|
43
|
+
end
|
44
|
+
def path_roster
|
45
|
+
"#{ path_base }/roster"
|
46
|
+
end
|
47
|
+
|
48
|
+
|
49
|
+
def api
|
50
|
+
@api || Sportradar::Api::Ncaafb.new
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
__END__
|
59
|
+
|
60
|
+
sr = Sportradar::Api::Ncaafb.new;
|
61
|
+
ss = sr.schedule;
|
62
|
+
teams = ss.weeks(1).games.flat_map(&:teams);
|
63
|
+
t = teams.first;
|
64
|
+
ps = t.get_roster; # ps => players
|
65
|
+
|
66
|
+
|
67
|
+
# week_count = ss.weeks.count;
|
68
|
+
# w1 = ss.weeks.first;
|
69
|
+
# w1 = ss.weeks(1);
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module Sportradar
|
2
|
+
module Api
|
3
|
+
class Ncaafb
|
4
|
+
class Week < Data
|
5
|
+
attr_accessor :response, :id, :sequence, :title, :season
|
6
|
+
|
7
|
+
def initialize(data, **opts)
|
8
|
+
@response = data
|
9
|
+
@api = opts[:api]
|
10
|
+
@season = opts[:season]
|
11
|
+
# @id = response['id']
|
12
|
+
# @year = response['year']
|
13
|
+
# @type = response['type']
|
14
|
+
@sequence = response['week']
|
15
|
+
|
16
|
+
rescue => e
|
17
|
+
binding.pry
|
18
|
+
end
|
19
|
+
|
20
|
+
def number
|
21
|
+
sequence
|
22
|
+
end
|
23
|
+
|
24
|
+
# private
|
25
|
+
|
26
|
+
def games
|
27
|
+
@games ||= parse_into_array_with_options(selector: response["game"], klass: Sportradar::Api::Ncaafb::Game, api: @api, week: self)
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/sportradar/api/nfl.rb
CHANGED
@@ -203,3 +203,9 @@ module Sportradar
|
|
203
203
|
end
|
204
204
|
end
|
205
205
|
end
|
206
|
+
|
207
|
+
__END__
|
208
|
+
|
209
|
+
http://api.sportradar.us/nfl-ot1/games/f45b4a31-b009-4039-8394-42efbc6d5532/pbp.xml?api_key=fzve3ze2xnvs8pbtpddx4t58
|
210
|
+
http://api.sportradar.us/nfl-ot1/games/5a7042cb-fe7a-4838-b93f-6b8c167ec384/pbp.xml?api_key=fzve3ze2xnvs8pbtpddx4t58
|
211
|
+
http://api.sportradar.us/nfl-ot1/games/7f761bb5-7963-43ea-a01b-baf4f5d50fe3/pbp.xml?api_key=fzve3ze2xnvs8pbtpddx4t58
|
@@ -3,8 +3,9 @@ module Sportradar
|
|
3
3
|
class Nfl::Conference < Data
|
4
4
|
attr_accessor :response, :id, :name, :alias, :divisions
|
5
5
|
|
6
|
-
def initialize(data)
|
6
|
+
def initialize(data, **opts)
|
7
7
|
@response = data
|
8
|
+
@api = opts[:api]
|
8
9
|
@id = data["id"]
|
9
10
|
@name = data["name"]
|
10
11
|
@alias = data["alias"]
|
@@ -9,6 +9,7 @@ module Sportradar
|
|
9
9
|
def get(path, options={})
|
10
10
|
base_setup(path, options)
|
11
11
|
begin
|
12
|
+
# puts url + "?api_key=#{api_key[:api_key]}" # uncomment for debugging
|
12
13
|
response = self.class.get(url, headers: headers, query: options.merge(api_key), timeout: timeout)
|
13
14
|
rescue Net::ReadTimeout, Net::OpenTimeout
|
14
15
|
raise Sportradar::Api::Error::Timeout
|
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.9.
|
4
|
+
version: 0.9.25
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ben Eggett
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-01-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -240,6 +240,64 @@ files:
|
|
240
240
|
- bin/console
|
241
241
|
- bin/setup
|
242
242
|
- lib/sportradar/api.rb
|
243
|
+
- lib/sportradar/api/basketball.rb
|
244
|
+
- lib/sportradar/api/basketball/bio.rb
|
245
|
+
- lib/sportradar/api/basketball/broadcast.rb
|
246
|
+
- lib/sportradar/api/basketball/nba.rb
|
247
|
+
- lib/sportradar/api/basketball/nba/conference.rb
|
248
|
+
- lib/sportradar/api/basketball/nba/division.rb
|
249
|
+
- lib/sportradar/api/basketball/nba/game.rb
|
250
|
+
- lib/sportradar/api/basketball/nba/hierarchy.rb
|
251
|
+
- lib/sportradar/api/basketball/nba/overview.rb
|
252
|
+
- lib/sportradar/api/basketball/nba/player.rb
|
253
|
+
- lib/sportradar/api/basketball/nba/quarter.rb
|
254
|
+
- lib/sportradar/api/basketball/nba/record.rb
|
255
|
+
- lib/sportradar/api/basketball/nba/schedule.rb
|
256
|
+
- lib/sportradar/api/basketball/nba/scoring.rb
|
257
|
+
- lib/sportradar/api/basketball/nba/season.rb
|
258
|
+
- lib/sportradar/api/basketball/nba/team.rb
|
259
|
+
- lib/sportradar/api/basketball/overview.rb
|
260
|
+
- lib/sportradar/api/basketball/play.rb
|
261
|
+
- lib/sportradar/api/basketball/plays.rb
|
262
|
+
- lib/sportradar/api/basketball/plays/assist.rb
|
263
|
+
- lib/sportradar/api/basketball/plays/base.rb
|
264
|
+
- lib/sportradar/api/basketball/plays/block.rb
|
265
|
+
- lib/sportradar/api/basketball/plays/clear_path_foul.rb
|
266
|
+
- lib/sportradar/api/basketball/plays/defensive_three_seconds.rb
|
267
|
+
- lib/sportradar/api/basketball/plays/delay.rb
|
268
|
+
- lib/sportradar/api/basketball/plays/ejection.rb
|
269
|
+
- lib/sportradar/api/basketball/plays/end_period.rb
|
270
|
+
- lib/sportradar/api/basketball/plays/flagrant_one.rb
|
271
|
+
- lib/sportradar/api/basketball/plays/flagrant_two.rb
|
272
|
+
- lib/sportradar/api/basketball/plays/foul.rb
|
273
|
+
- lib/sportradar/api/basketball/plays/free_throw_made.rb
|
274
|
+
- lib/sportradar/api/basketball/plays/free_throw_miss.rb
|
275
|
+
- lib/sportradar/api/basketball/plays/jumpball.rb
|
276
|
+
- lib/sportradar/api/basketball/plays/kickball.rb
|
277
|
+
- lib/sportradar/api/basketball/plays/lineup_change.rb
|
278
|
+
- lib/sportradar/api/basketball/plays/offensive_foul.rb
|
279
|
+
- lib/sportradar/api/basketball/plays/official_timeout.rb
|
280
|
+
- lib/sportradar/api/basketball/plays/open_inbound.rb
|
281
|
+
- lib/sportradar/api/basketball/plays/open_tip.rb
|
282
|
+
- lib/sportradar/api/basketball/plays/personal_foul.rb
|
283
|
+
- lib/sportradar/api/basketball/plays/rebound.rb
|
284
|
+
- lib/sportradar/api/basketball/plays/review.rb
|
285
|
+
- lib/sportradar/api/basketball/plays/shooting_foul.rb
|
286
|
+
- lib/sportradar/api/basketball/plays/shot_made.rb
|
287
|
+
- lib/sportradar/api/basketball/plays/shot_miss.rb
|
288
|
+
- lib/sportradar/api/basketball/plays/steal.rb
|
289
|
+
- lib/sportradar/api/basketball/plays/team_timeout.rb
|
290
|
+
- lib/sportradar/api/basketball/plays/technical_foul.rb
|
291
|
+
- lib/sportradar/api/basketball/plays/three_point_made.rb
|
292
|
+
- lib/sportradar/api/basketball/plays/three_point_miss.rb
|
293
|
+
- lib/sportradar/api/basketball/plays/timeout.rb
|
294
|
+
- lib/sportradar/api/basketball/plays/turnover.rb
|
295
|
+
- lib/sportradar/api/basketball/plays/tv_timeout.rb
|
296
|
+
- lib/sportradar/api/basketball/plays/two_point_made.rb
|
297
|
+
- lib/sportradar/api/basketball/plays/two_point_miss.rb
|
298
|
+
- lib/sportradar/api/basketball/profile.rb
|
299
|
+
- lib/sportradar/api/basketball/season.rb
|
300
|
+
- lib/sportradar/api/basketball/venue.rb
|
243
301
|
- lib/sportradar/api/config.rb
|
244
302
|
- lib/sportradar/api/content.rb
|
245
303
|
- lib/sportradar/api/content/article.rb
|
@@ -269,6 +327,27 @@ files:
|
|
269
327
|
- lib/sportradar/api/images/link.rb
|
270
328
|
- lib/sportradar/api/images/tag.rb
|
271
329
|
- lib/sportradar/api/live_images.rb
|
330
|
+
- lib/sportradar/api/mma.rb
|
331
|
+
- lib/sportradar/api/mma/event.rb
|
332
|
+
- lib/sportradar/api/mma/fight.rb
|
333
|
+
- lib/sportradar/api/mma/fighter.rb
|
334
|
+
- lib/sportradar/api/mma/judge.rb
|
335
|
+
- lib/sportradar/api/mma/league.rb
|
336
|
+
- lib/sportradar/api/mma/referee.rb
|
337
|
+
- lib/sportradar/api/mma/result.rb
|
338
|
+
- lib/sportradar/api/mma/roster.rb
|
339
|
+
- lib/sportradar/api/mma/schedule.rb
|
340
|
+
- lib/sportradar/api/mma/score.rb
|
341
|
+
- lib/sportradar/api/mma/venue.rb
|
342
|
+
- lib/sportradar/api/ncaafb.rb
|
343
|
+
- lib/sportradar/api/ncaafb/drive.rb
|
344
|
+
- lib/sportradar/api/ncaafb/game.rb
|
345
|
+
- lib/sportradar/api/ncaafb/play.rb
|
346
|
+
- lib/sportradar/api/ncaafb/player.rb
|
347
|
+
- lib/sportradar/api/ncaafb/quarter.rb
|
348
|
+
- lib/sportradar/api/ncaafb/season.rb
|
349
|
+
- lib/sportradar/api/ncaafb/team.rb
|
350
|
+
- lib/sportradar/api/ncaafb/week.rb
|
272
351
|
- lib/sportradar/api/nfl.rb
|
273
352
|
- lib/sportradar/api/nfl/.play_statistics.rb.swo
|
274
353
|
- lib/sportradar/api/nfl/broadcast.rb
|