epl_cli_gem 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/epl_cli_gem/cli.rb +6 -2
- data/lib/epl_cli_gem/scraper.rb +16 -1
- data/lib/epl_cli_gem/team.rb +2 -22
- data/lib/epl_cli_gem/version.rb +1 -1
- metadata +1 -4
- data/epl_cli_gem-0.1.0.gem +0 -0
- data/epl_cli_gem-0.1.1.gem +0 -0
- data/epl_cli_gem-0.1.2.gem +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3f549db04c6fc2b84262ea260a039d0bf2bd984f
|
4
|
+
data.tar.gz: d0513aaeb276b6d9adbbac475ef5e02ba550e894
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fcf564708126ee3b71702df964740c01436952404d5c19a7a142b58323bd223735741b5469153b94bd4d2152a82c6f0f5533e048b7b91a876c8a30b076e3d8ce
|
7
|
+
data.tar.gz: 2e70e0a663c12ba67a566a03a233c150489f75f978909ac6c8bb7a2144068ba9b49a8751f1cab4c36665e9b5cbbbf50826f85e72cd45d3adecfd57684cc6bbe5
|
data/lib/epl_cli_gem/cli.rb
CHANGED
@@ -1,11 +1,15 @@
|
|
1
1
|
class EplCliGem::CLI
|
2
2
|
|
3
3
|
def call
|
4
|
+
welcome
|
5
|
+
EplCliGem::Scraper.new.scrape_table # Priming set here to give user time to read preceding output.
|
6
|
+
start
|
7
|
+
end
|
8
|
+
|
9
|
+
def welcome
|
4
10
|
puts ""
|
5
11
|
puts "Welcome to the English Premier League CLI gem\n\n".colorize(:cyan)
|
6
12
|
puts "If the output looks messy please\nmake sure your CLI is long enough.\n\n".colorize(:light_red).underline
|
7
|
-
EplCliGem::Team.make_teams # Priming set here to give user time to read preceding output.
|
8
|
-
start
|
9
13
|
end
|
10
14
|
|
11
15
|
def start
|
data/lib/epl_cli_gem/scraper.rb
CHANGED
@@ -5,7 +5,22 @@ class EplCliGem::Scraper
|
|
5
5
|
end
|
6
6
|
|
7
7
|
def scrape_table
|
8
|
-
self.get_page.css("tbody.tableBodyContainer tr[data-compseason='54']")
|
8
|
+
self.get_page.css("tbody.tableBodyContainer tr[data-compseason='54']").each do |row|
|
9
|
+
|
10
|
+
EplCliGem::Team.new(
|
11
|
+
row, #=> self.nodeset: data from scrape, needed for various methods requiring scraped data
|
12
|
+
row.css("span.long").text, #=> self.name
|
13
|
+
row.css("span.value").text, #=> self.rank
|
14
|
+
"https://www.premierleague.com#{row.css("a").attribute("href").text}", #=> self.url
|
15
|
+
row.css("td[4]").text, #=> self.games_played
|
16
|
+
row.css("td[5]").text, #=> self.won
|
17
|
+
row.css("td[6]").text, #=> self.drawn
|
18
|
+
row.css("td[7]").text, #=> self.lost
|
19
|
+
row.css("td[10]").text.strip, #=> self.goal_diff
|
20
|
+
row.css("td.points").text #=> self.points
|
21
|
+
)
|
22
|
+
|
23
|
+
end
|
9
24
|
end
|
10
25
|
|
11
26
|
end
|
data/lib/epl_cli_gem/team.rb
CHANGED
@@ -4,28 +4,6 @@ class EplCliGem::Team
|
|
4
4
|
|
5
5
|
@@all = []
|
6
6
|
|
7
|
-
def self.make_teams
|
8
|
-
@@table ||= EplCliGem::Scraper.new.scrape_table
|
9
|
-
@@table.each{|row| self.new_from_table(row)}
|
10
|
-
end
|
11
|
-
|
12
|
-
def self.new_from_table(row)
|
13
|
-
|
14
|
-
self.new(
|
15
|
-
row, #=> self.nodeset: data from scrape, needed for various methods requiring scraped data
|
16
|
-
row.css("span.long").text, #=> self.name
|
17
|
-
row.css("span.value").text, #=> self.rank
|
18
|
-
"https://www.premierleague.com#{row.css("a").attribute("href").text}", #=> self.url
|
19
|
-
row.css("td[4]").text, #=> self.games_played
|
20
|
-
row.css("td[5]").text, #=> self.won
|
21
|
-
row.css("td[6]").text, #=> self.drawn
|
22
|
-
row.css("td[7]").text, #=> self.lost
|
23
|
-
row.css("td[10]").text.strip, #=> self.goal_diff
|
24
|
-
row.css("td.points").text #=> self.points
|
25
|
-
)
|
26
|
-
|
27
|
-
end
|
28
|
-
|
29
7
|
def initialize(row, name=nil, rank=nil, url=nil, games_played=nil, won=nil, drawn=nil, lost=nil, goal_diff=nil, points=nil)
|
30
8
|
@nodeset = row
|
31
9
|
@name = name
|
@@ -49,6 +27,8 @@ class EplCliGem::Team
|
|
49
27
|
end
|
50
28
|
|
51
29
|
def match_date
|
30
|
+
#TODO: check to see if can implement if statement to skip "To be determined" and grab next match due to rescheduling
|
31
|
+
|
52
32
|
# matches are sometimes pending due to scheduling, if statement in place
|
53
33
|
# to stop NoMethodError from .text when there is no text to return
|
54
34
|
|
data/lib/epl_cli_gem/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: epl_cli_gem
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- J Ilustrisimo
|
@@ -127,9 +127,6 @@ files:
|
|
127
127
|
- bin/console
|
128
128
|
- bin/epl
|
129
129
|
- bin/setup
|
130
|
-
- epl_cli_gem-0.1.0.gem
|
131
|
-
- epl_cli_gem-0.1.1.gem
|
132
|
-
- epl_cli_gem-0.1.2.gem
|
133
130
|
- epl_cli_gem.gemspec
|
134
131
|
- lib/epl_cli_gem.rb
|
135
132
|
- lib/epl_cli_gem/cli.rb
|
data/epl_cli_gem-0.1.0.gem
DELETED
Binary file
|
data/epl_cli_gem-0.1.1.gem
DELETED
Binary file
|
data/epl_cli_gem-0.1.2.gem
DELETED
Binary file
|