mlb_gd2 0.1.4 → 0.1.5

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
  SHA1:
3
- metadata.gz: 451f0d0d4e7e2d2a679f770c9947ca73954c2a34
4
- data.tar.gz: b951fdc9d2f34164ace157c46b8ce6fbc3495c6c
3
+ metadata.gz: b41f7e49bc5202d26ab922b5ac7db4d9381e3546
4
+ data.tar.gz: 40bd6864d0ac255e73111225fe7a4840995c1468
5
5
  SHA512:
6
- metadata.gz: 254765e777b468fa155acd428131f3a4d579cd9d5d3b14fb452653134459a51a011652ebb27f59520a5d974b5b0d7e957f33106b628037e0a9ac44b18db2f395
7
- data.tar.gz: c3f475bf07c57290bccc64918c6c5929967b143cd3f6fb137d5c3f11ea3bc47c9bf3cdbe9f17a4b0eae38b2bd969136a606206fb65975d39ddb2c41b9129807e
6
+ metadata.gz: 65efc088f49a55c0b10d6a64c5de0fa1e09c7796a9f3c7ddc7094b50b3972c70c18e69bc8228065f1f7ba096b6a97044d461f03587d2f35072e9064a889081d4
7
+ data.tar.gz: df5cd2efb5bd7208b3038a5a11a16f8b69d80e849237326c454eb5b4a49a07e47629e60955fc420a2f8ce2ba2a473426bb9d3c8e523dedb5cbc9ae867128368e
data/lib/mlb_gd2/game.rb CHANGED
@@ -1,11 +1,14 @@
1
1
  require "net/http"
2
2
  require "nokogiri"
3
+ require_relative "./helpers"
3
4
 
4
5
  class Game
5
6
 
7
+ include Helpers
8
+
6
9
  def initialize(url)
7
10
  @url = url
8
- @boxscore = GamedayUrlBuilder.generate_nokogiri_xml(url + 'boxscore.xml').xpath("//boxscore").first
11
+ @boxscore = generate_nokogiri_xml(url + 'boxscore.xml').xpath("//boxscore").first
9
12
  end
10
13
 
11
14
  def teams
@@ -1,17 +1,23 @@
1
1
  require "net/http"
2
2
  require "nokogiri"
3
+ require_relative "./helpers"
3
4
 
4
5
  class Gameday
5
6
 
7
+ include Helpers
8
+
6
9
  attr_reader :games, :date
7
10
 
8
11
  def initialize(year, month, day)
9
12
  date_time = Time.new(year, month, day)
10
- base_url = GamedayUrlBuilder.build_base_url(date_time)
13
+ base_url = build_base_url(date_time)
11
14
 
12
- @games = GamedayUrlBuilder.generate_nokogiri_html(base_url).search('a[href^="gid"]').map do |link|
15
+ @games = []
16
+ generate_nokogiri_html(base_url).search('a[href^="gid"]').each do |link|
13
17
  gid = link.attributes["href"].value
14
- Game.new(base_url + gid)
18
+ if valid_game?(base_url + gid)
19
+ @games << Game.new(base_url + gid)
20
+ end
15
21
  end
16
22
  @date = date_time.strftime("%B %-d, %Y")
17
23
  end
@@ -1,20 +1,24 @@
1
1
  require "net/http"
2
2
  require "nokogiri"
3
3
 
4
- class GamedayUrlBuilder
4
+ module Helpers
5
5
 
6
6
  GD2_MLB_BASE = "http://gd2.mlb.com/components/game/mlb"
7
7
 
8
- def self.build_base_url(date)
8
+ def build_base_url(date)
9
9
  GD2_MLB_BASE + date.strftime("/year_%Y/month_%m/day_%d/")
10
10
  end
11
11
 
12
- def self.generate_nokogiri_html(url)
12
+ def generate_nokogiri_html(url)
13
13
  Nokogiri::HTML(Net::HTTP.get(URI(url)))
14
14
  end
15
15
 
16
- def self.generate_nokogiri_xml(url)
16
+ def generate_nokogiri_xml(url)
17
17
  Nokogiri::XML(Net::HTTP.get(URI(url)))
18
18
  end
19
19
 
20
+ def valid_game?(url)
21
+ generate_nokogiri_xml(url).xpath('//a').map { |link| link.attribute('href').value }.include? "boxscore.xml"
22
+ end
23
+
20
24
  end
data/lib/mlb_gd2.rb CHANGED
@@ -1,3 +1,2 @@
1
1
  require 'mlb_gd2/game'
2
- require 'mlb_gd2/gameday'
3
- require 'mlb_gd2/gameday_helpers'
2
+ require 'mlb_gd2/gameday'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mlb_gd2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henry Firth
@@ -33,7 +33,7 @@ files:
33
33
  - lib/mlb_gd2.rb
34
34
  - lib/mlb_gd2/game.rb
35
35
  - lib/mlb_gd2/gameday.rb
36
- - lib/mlb_gd2/gameday_helpers.rb
36
+ - lib/mlb_gd2/helpers.rb
37
37
  homepage: http://rubygems.org/gems/mlb_gd2
38
38
  licenses:
39
39
  - MIT