livescore-parser 0.1.2 → 0.1.3

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: 2e23b94b2804c5f214cb832551711871290a6878
4
- data.tar.gz: 75cb546fb210cb8b856f63409f1d88a6a38b7a92
3
+ metadata.gz: 58ce15c34cc7bddc32a5d7e732c91e7373949b16
4
+ data.tar.gz: 690673eb5ca3c4384bac4e536899db73669a871e
5
5
  SHA512:
6
- metadata.gz: a71dbc84a53c11683c26d1c033fddd790562997f2470a013a5d585545150623144f5d0deb4290b773490809c4d5641ded8701d050b2e3f471edc43b86a1a053e
7
- data.tar.gz: d25fb25d2445b986b2bb5572232f81c876b5cdd7fc57e4eba2e7cae96ae0106104a5e0a6fee12c0ff6c7571a6ff3f38ef9483acb8d8c3ca82482bcd4c5fc6f65
6
+ metadata.gz: 5d555f5c0e8704a505d1bb2f320ca6e616534936a7f8861293c42708390f34e0942dee8645e45af6a78a4a622f8f729ae9ea7419456b55963fe3667430b3d4b3
7
+ data.tar.gz: 01d64e014baf28b88ef1d2ba1133c16e9dfa559503d0fa7931e4bd492fbbcce4ba3d31c6e0713a5ecb19ed5db782e3ad08b36e51519c60a2f7f4ab0606b2408a
@@ -9,7 +9,6 @@ module LivescoreParser
9
9
  require 'yaml'
10
10
  require 'mechanize'
11
11
  require 'nokogiri'
12
- require 'pry'
13
12
 
14
13
  require_relative 'livescore-parser/parser' # Parsing from website
15
14
  require_relative 'livescore-parser/writer' # Writing from ruby hash to XML
@@ -18,7 +18,7 @@ module LivescoreParser
18
18
 
19
19
  def download(url)
20
20
  page = Nokogiri::HTML(@agent.get(url).body)
21
- data = build_hash page.css(".content tr").select{ |row| row.css('td').any? }
21
+ data = build_hash page.css(".content tr")
22
22
  if data.empty?
23
23
  puts "Missing data"
24
24
  return nil
@@ -31,16 +31,22 @@ module LivescoreParser
31
31
  def build_hash(data)
32
32
  index = 0
33
33
  data.map do |row|
34
- index += 1
35
- {
36
- wiersz: index,
37
- czas: row.css('td')[0].text.strip,
38
- gracz1: row.css('td')[1].text.strip,
39
- wynik1: row.css('td')[2].text.strip.match(/^[0-9\?]+/).to_s,
40
- gracz2: row.css('td')[3].text.strip,
41
- wynik2: row.css('td')[2].text.strip.match(/[0-9\?]+$/).to_s
42
- }
43
- end
34
+ if row.css('td').any?
35
+ index += 1
36
+ {
37
+ wiersz: index,
38
+ czas: row.css('td')[0].text.strip,
39
+ gracz1: row.css('td')[1].text.strip,
40
+ wynik1: row.css('td')[2].text.strip.match(/^[0-9\?]+/).to_s,
41
+ gracz2: row.css('td')[3].text.strip,
42
+ wynik2: row.css('td')[2].text.strip.match(/[0-9\?]+$/).to_s,
43
+ kraj: @country
44
+ }
45
+ else
46
+ @country = row.css('.league').text.strip
47
+ next
48
+ end
49
+ end.compact
44
50
  end
45
51
  end
46
52
  end
@@ -31,15 +31,15 @@ module LivescoreParser
31
31
  data.each do |score|
32
32
  xml.node do |node|
33
33
  node.wiersz score[:wiersz]
34
- node.czas score[:czas]
34
+ node.czas score[:czas]
35
35
  node.gracz1 score[:gracz1]
36
36
  node.wynik1 score[:wynik1]
37
37
  node.gracz2 score[:gracz2]
38
38
  node.wynik2 score[:wynik2]
39
+ node.kraj score[:kraj]
39
40
  end
40
41
  end
41
42
  end
42
43
  end
43
44
  end
44
45
  end
45
- # {:wiersz=>1, :czas=>"19:45", :gracz1=>"Wycombe Wanderers", :wynik1=>"?", :gracz2=>"Burton Albion", :wynik2=>"?"}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: livescore-parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maciej Walusiak
@@ -85,7 +85,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
85
  version: '0'
86
86
  requirements: []
87
87
  rubyforge_project:
88
- rubygems_version: 2.2.0
88
+ rubygems_version: 2.2.2
89
89
  signing_key:
90
90
  specification_version: 4
91
91
  summary: TV Channel parser