raev 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 64988202ffa1289c5d9e0f6fe59767e1bf6c2b2d
4
- data.tar.gz: 1fc08d2929d84fbb849a81c6bd4a843eb952b644
3
+ metadata.gz: b020e95434fd22eaeb55f5046596393745179bad
4
+ data.tar.gz: 4f11eb87fdbabfb2cfd57affce3d51fc8b56af26
5
5
  SHA512:
6
- metadata.gz: 42cf3c6f84cc0061b7b5b51e43796546c9e03d1a5064d20b187783f065a354a63b90cbe8ae91254436a915d75c0459dae6eabfb6a9ffbb95e6197add643245fa
7
- data.tar.gz: f97e2730ca39ad035a0891701cdfc65cf7b1208cd313299a26146079ecaf38d5f4b9f69a36e23017be70f58153452cdbb4391b44c1b4dfcedfeb193ca15c0874
6
+ metadata.gz: eea620803d2b0588fcef20a1be4c93ad311b2e31e3588822b1ccb780dde354e0a19ddfbcceaeba211d931e60c84fd917d6174f849fd7b641b40f9d709e2b4b37
7
+ data.tar.gz: ad3e2afef1f12370a98742e5d45148fb79240c15c7abcb4bef2d1f4d601cbd9aae78998a1d1dd6f711d59c95993ae48e4f94dd0f438588f2363127bca011eddf
data/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- gem "json", '>= 1.8.1'
3
+ gem "json", '>= 1.8.3'
4
4
  gem "nokogiri", ">= 1.6.1"
5
5
  gem "redirect_follower", ">= 0.1.1"
6
6
  gem "sanitize", ">= 2.1.0"
@@ -8,7 +8,7 @@ gem "chronic", ">=0.9.1"
8
8
 
9
9
  group :development do
10
10
  gem "shoulda", ">= 0"
11
- gem "bundler", "~> 1.7.2"
12
- gem "jeweler", "2.0.1"
11
+ gem "bundler", "~> 1.12.3"
12
+ gem "jeweler", "2.1.1"
13
13
  gem "test-unit", "~> 2.5.4"
14
14
  end
@@ -1,33 +1,31 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- activesupport (4.1.8)
5
- i18n (~> 0.6, >= 0.6.9)
4
+ activesupport (4.2.6)
5
+ i18n (~> 0.7)
6
6
  json (~> 1.7, >= 1.7.7)
7
7
  minitest (~> 5.1)
8
- thread_safe (~> 0.1)
8
+ thread_safe (~> 0.3, >= 0.3.4)
9
9
  tzinfo (~> 1.1)
10
- addressable (2.3.6)
10
+ addressable (2.4.0)
11
11
  builder (3.2.2)
12
12
  chronic (0.10.2)
13
13
  crass (1.0.2)
14
14
  descendants_tracker (0.0.4)
15
15
  thread_safe (~> 0.3, >= 0.3.1)
16
- faraday (0.9.0)
16
+ faraday (0.9.2)
17
17
  multipart-post (>= 1.2, < 3)
18
- git (1.2.8)
19
- github_api (0.12.2)
20
- addressable (~> 2.3)
18
+ git (1.3.0)
19
+ github_api (0.14.0)
20
+ addressable (~> 2.4.0)
21
21
  descendants_tracker (~> 0.0.4)
22
22
  faraday (~> 0.8, < 0.10)
23
- hashie (>= 3.3)
24
- multi_json (>= 1.7.5, < 2.0)
25
- nokogiri (~> 1.6.3)
23
+ hashie (>= 3.4)
26
24
  oauth2
27
- hashie (3.3.1)
28
- highline (1.6.21)
29
- i18n (0.6.11)
30
- jeweler (2.0.1)
25
+ hashie (3.4.4)
26
+ highline (1.7.8)
27
+ i18n (0.7.0)
28
+ jeweler (2.1.1)
31
29
  builder
32
30
  bundler (>= 1.0)
33
31
  git (>= 1.2.5)
@@ -36,40 +34,42 @@ GEM
36
34
  nokogiri (>= 1.5.10)
37
35
  rake
38
36
  rdoc
39
- json (1.8.1)
40
- jwt (1.2.0)
41
- mini_portile (0.6.1)
42
- minitest (5.4.3)
43
- multi_json (1.10.1)
37
+ semver
38
+ json (1.8.3)
39
+ jwt (1.5.1)
40
+ mini_portile2 (2.0.0)
41
+ minitest (5.9.0)
42
+ multi_json (1.12.1)
44
43
  multi_xml (0.5.5)
45
44
  multipart-post (2.0.0)
46
- nokogiri (1.6.4.1)
47
- mini_portile (~> 0.6.0)
48
- nokogumbo (1.4.1)
45
+ nokogiri (1.6.7.2)
46
+ mini_portile2 (~> 2.0.0.rc2)
47
+ nokogumbo (1.4.7)
49
48
  nokogiri
50
- oauth2 (1.0.0)
49
+ oauth2 (1.1.0)
51
50
  faraday (>= 0.8, < 0.10)
52
- jwt (~> 1.0)
51
+ jwt (~> 1.0, < 1.5.2)
53
52
  multi_json (~> 1.3)
54
53
  multi_xml (~> 0.5)
55
- rack (~> 1.2)
56
- rack (1.5.2)
57
- rake (10.4.0)
58
- rdoc (4.1.2)
54
+ rack (>= 1.2, < 3)
55
+ rack (1.6.4)
56
+ rake (11.1.2)
57
+ rdoc (4.2.2)
59
58
  json (~> 1.4)
60
59
  redirect_follower (0.1.1)
61
- sanitize (4.0.0)
60
+ sanitize (4.0.1)
62
61
  crass (~> 1.0.2)
63
62
  nokogiri (>= 1.4.4)
64
- nokogumbo (= 1.4.1)
63
+ nokogumbo (~> 1.4.1)
64
+ semver (1.0.1)
65
65
  shoulda (3.5.0)
66
66
  shoulda-context (~> 1.0, >= 1.0.1)
67
67
  shoulda-matchers (>= 1.4.1, < 3.0)
68
68
  shoulda-context (1.2.1)
69
- shoulda-matchers (2.7.0)
69
+ shoulda-matchers (2.8.0)
70
70
  activesupport (>= 3.0.0)
71
71
  test-unit (2.5.5)
72
- thread_safe (0.3.4)
72
+ thread_safe (0.3.5)
73
73
  tzinfo (1.2.2)
74
74
  thread_safe (~> 0.1)
75
75
 
@@ -77,12 +77,15 @@ PLATFORMS
77
77
  ruby
78
78
 
79
79
  DEPENDENCIES
80
- bundler (~> 1.7.2)
80
+ bundler (~> 1.12.3)
81
81
  chronic (>= 0.9.1)
82
- jeweler (= 2.0.1)
83
- json (>= 1.8.1)
82
+ jeweler (= 2.1.1)
83
+ json (>= 1.8.3)
84
84
  nokogiri (>= 1.6.1)
85
85
  redirect_follower (>= 0.1.1)
86
86
  sanitize (>= 2.1.0)
87
87
  shoulda
88
88
  test-unit (~> 2.5.4)
89
+
90
+ BUNDLED WITH
91
+ 1.12.3
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 0.2.2
@@ -29,6 +29,9 @@ module Raev
29
29
  # Remove nickname quotes
30
30
  author = author.gsub(/\"(.*)\"/, "").gsub(/\'(.*)\'/, "").gsub(" ", " ")
31
31
 
32
+ # Remove "by"
33
+ author = author.gsub("by ", "")
34
+
32
35
  # Capitalize
33
36
  return author.split(' ').map(&:capitalize).join(' ')
34
37
  end
@@ -151,10 +151,16 @@ module Raev
151
151
  end
152
152
 
153
153
  def author
154
+ node = document.search('meta[name="author"]').first
155
+
156
+ if node && node.attribute("content")
157
+ return node.attribute("content").value
158
+ end
159
+
154
160
  cssSelectors = [
155
161
  '.author-info .name',
156
162
  '.author-top a',
157
- '.yt-user-name',
163
+ '.yt-user-info a',
158
164
  'a[rel~="author"]',
159
165
  'a[itemprop~="author"]',
160
166
  '.author h3 a',
@@ -183,7 +189,41 @@ module Raev
183
189
 
184
190
  ""
185
191
  end
186
-
192
+
193
+ def ratingValue
194
+ node = document.search('*[itemprop="ratingValue"]').first
195
+
196
+ if node
197
+ if node.attribute("content")
198
+ value = node.attribute("content").value
199
+ else
200
+ value = node.content
201
+ end
202
+ end
203
+
204
+ if value
205
+ value.to_f
206
+ else
207
+ nil
208
+ end
209
+ end
210
+
211
+ def bestRating
212
+ node = document.search('*[itemprop="bestRating"]').first
213
+
214
+ if node
215
+ if node.attribute("content")
216
+ value = node.attribute("content").value
217
+
218
+ if value
219
+ return value.to_f
220
+ end
221
+ end
222
+ end
223
+
224
+ nil
225
+ end
226
+
187
227
  private
188
228
 
189
229
  def document
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: raev 0.2.1 ruby lib
5
+ # stub: raev 0.2.2 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "raev"
9
- s.version = "0.2.1"
9
+ s.version = "0.2.2"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
13
13
  s.authors = ["Andreas Zecher"]
14
- s.date = "2015-08-20"
14
+ s.date = "2016-05-23"
15
15
  s.description = "Fetch, parse and normalize meta data from websites."
16
16
  s.email = "andreas@madebypixelate.com"
17
17
  s.extra_rdoc_files = [
@@ -39,42 +39,42 @@ Gem::Specification.new do |s|
39
39
  ]
40
40
  s.homepage = "http://github.com/pixelate/raev"
41
41
  s.licenses = ["MIT"]
42
- s.rubygems_version = "2.4.5"
42
+ s.rubygems_version = "2.5.1"
43
43
  s.summary = "Fetch, parse and normalize meta data from websites."
44
44
 
45
45
  if s.respond_to? :specification_version then
46
46
  s.specification_version = 4
47
47
 
48
48
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
49
- s.add_runtime_dependency(%q<json>, [">= 1.8.1"])
49
+ s.add_runtime_dependency(%q<json>, [">= 1.8.3"])
50
50
  s.add_runtime_dependency(%q<nokogiri>, [">= 1.6.1"])
51
51
  s.add_runtime_dependency(%q<redirect_follower>, [">= 0.1.1"])
52
52
  s.add_runtime_dependency(%q<sanitize>, [">= 2.1.0"])
53
53
  s.add_runtime_dependency(%q<chronic>, [">= 0.9.1"])
54
54
  s.add_development_dependency(%q<shoulda>, [">= 0"])
55
- s.add_development_dependency(%q<bundler>, ["~> 1.7.2"])
56
- s.add_development_dependency(%q<jeweler>, ["= 2.0.1"])
55
+ s.add_development_dependency(%q<bundler>, ["~> 1.12.3"])
56
+ s.add_development_dependency(%q<jeweler>, ["= 2.1.1"])
57
57
  s.add_development_dependency(%q<test-unit>, ["~> 2.5.4"])
58
58
  else
59
- s.add_dependency(%q<json>, [">= 1.8.1"])
59
+ s.add_dependency(%q<json>, [">= 1.8.3"])
60
60
  s.add_dependency(%q<nokogiri>, [">= 1.6.1"])
61
61
  s.add_dependency(%q<redirect_follower>, [">= 0.1.1"])
62
62
  s.add_dependency(%q<sanitize>, [">= 2.1.0"])
63
63
  s.add_dependency(%q<chronic>, [">= 0.9.1"])
64
64
  s.add_dependency(%q<shoulda>, [">= 0"])
65
- s.add_dependency(%q<bundler>, ["~> 1.7.2"])
66
- s.add_dependency(%q<jeweler>, ["= 2.0.1"])
65
+ s.add_dependency(%q<bundler>, ["~> 1.12.3"])
66
+ s.add_dependency(%q<jeweler>, ["= 2.1.1"])
67
67
  s.add_dependency(%q<test-unit>, ["~> 2.5.4"])
68
68
  end
69
69
  else
70
- s.add_dependency(%q<json>, [">= 1.8.1"])
70
+ s.add_dependency(%q<json>, [">= 1.8.3"])
71
71
  s.add_dependency(%q<nokogiri>, [">= 1.6.1"])
72
72
  s.add_dependency(%q<redirect_follower>, [">= 0.1.1"])
73
73
  s.add_dependency(%q<sanitize>, [">= 2.1.0"])
74
74
  s.add_dependency(%q<chronic>, [">= 0.9.1"])
75
75
  s.add_dependency(%q<shoulda>, [">= 0"])
76
- s.add_dependency(%q<bundler>, ["~> 1.7.2"])
77
- s.add_dependency(%q<jeweler>, ["= 2.0.1"])
76
+ s.add_dependency(%q<bundler>, ["~> 1.12.3"])
77
+ s.add_dependency(%q<jeweler>, ["= 2.1.1"])
78
78
  s.add_dependency(%q<test-unit>, ["~> 2.5.4"])
79
79
  end
80
80
  end
@@ -65,10 +65,10 @@ class UrlTest < Test::Unit::TestCase
65
65
  url = Raev.url("http://indiegames.com/2013/06/indie_fund_backing_for_two_new.html")
66
66
  assert_equal "Indie Fund backing two new titles for Double Fine", url.headline
67
67
 
68
- url = Raev.url("http://killscreendaily.com/articles/news/cheat-sheet-614/")
69
- assert_equal "Pixels on canvas, Spielberg's predictions, and Polytron's glorious tease", url.headline
68
+ url = Raev.url("https://killscreendaily.com/articles/news/cheat-sheet-614/")
69
+ assert_equal "Pixels on canvas, Spielberg's predictions, and Polytron's glorious tease - Kill Screen", url.headline
70
70
 
71
- url = Raev.url("http://www.rockpapershotgun.com/2013/06/05/i-spy-an-open-beta-for-spy-party/")
71
+ url = Raev.url("https://www.rockpapershotgun.com/2013/06/05/i-spy-an-open-beta-for-spy-party/")
72
72
  assert_equal "I Spy An Open Beta For Spy Party", url.headline
73
73
  end
74
74
 
@@ -79,7 +79,7 @@ class UrlTest < Test::Unit::TestCase
79
79
  url = Raev.url("http://kotaku.com/this-week-destiny-got-a-hell-of-a-lot-better-1706391634")
80
80
  assert_equal_date Date.new(2015, 5, 23), url.pubdate
81
81
 
82
- url = Raev.url("http://www.rockpapershotgun.com/2014/07/03/beauty-beheld-future-unfolding/")
82
+ url = Raev.url("https://www.rockpapershotgun.com/2014/07/03/beauty-beheld-future-unfolding/")
83
83
  assert_equal_date Date.new(2014, 7, 3), url.pubdate
84
84
 
85
85
  url = Raev.url("http://jayisgames.com/review/the-black-forest-finding-friends.php")
@@ -96,7 +96,7 @@ class UrlTest < Test::Unit::TestCase
96
96
  end
97
97
 
98
98
  should "get author from url" do
99
- url = Raev.url("http://www.rockpapershotgun.com/2014/07/03/beauty-beheld-future-unfolding/")
99
+ url = Raev.url("https://www.rockpapershotgun.com/2014/07/03/beauty-beheld-future-unfolding/")
100
100
  assert_equal "Adam Smith", url.author
101
101
 
102
102
  url = Raev.url("http://www.polygon.com/features/2013/3/25/4128022/gdc-gathering-of-game-makers")
@@ -105,12 +105,29 @@ class UrlTest < Test::Unit::TestCase
105
105
  url = Raev.url("http://kotaku.com/worth-reading-some-kickstarters-are-lying-about-game-b-1706340013")
106
106
  assert_equal "Patrick Klepek", url.author
107
107
 
108
- url = Raev.url("http://killscreendaily.com/articles/future-unfolding-wonder/")
108
+ url = Raev.url("https://killscreendaily.com/articles/future-unfolding-wonder/")
109
109
  assert_equal "Jess Joho", url.author
110
110
 
111
111
  url = Raev.url("http://www.creativeapplications.net/games/future-unfolding-procedurally-generated-world-both-beautiful-and-dangerous/")
112
- assert_equal "Filip Visnjic", url.author
112
+ assert_equal "Filip Visnjic", Raev::normalize_author(url.author)
113
+
114
+ url = Raev.url("https://www.youtube.com/watch?v=FmZYPMsq5m4")
115
+ assert_equal "PsiSyndicate", url.author
113
116
  end
117
+
118
+ should "get score" do
119
+ url = Raev.url("http://www.slantmagazine.com/games/review/shadow-of-the-beast")
120
+ assert_equal 4.0, url.ratingValue
121
+ assert_equal 5, url.bestRating
122
+
123
+ url = Raev.url("http://www.gamesradar.com/superhot-review/")
124
+ assert_equal 4.5, url.ratingValue
125
+ assert_equal 5, url.bestRating
126
+
127
+ url = Raev.url("http://www.gameswelt.de/shadow-of-the-beast/test/klassiker-im-neuen-gewand,257932")
128
+ assert_equal 8, url.ratingValue
129
+ assert_equal 10, url.bestRating
130
+ end
114
131
 
115
132
  private
116
133
 
metadata CHANGED
@@ -1,139 +1,139 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raev
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andreas Zecher
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-20 00:00:00.000000000 Z
11
+ date: 2016-05-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.8.1
19
+ version: 1.8.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.8.1
26
+ version: 1.8.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: nokogiri
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: 1.6.1
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.6.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: redirect_follower
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: 0.1.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: 0.1.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: sanitize
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: 2.1.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: 2.1.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: chronic
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: 0.9.1
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.9.1
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: shoulda
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '>='
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: bundler
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 1.7.2
103
+ version: 1.12.3
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 1.7.2
110
+ version: 1.12.3
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: jeweler
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 2.0.1
117
+ version: 2.1.1
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - '='
123
123
  - !ruby/object:Gem::Version
124
- version: 2.0.1
124
+ version: 2.1.1
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: test-unit
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ~>
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
131
  version: 2.5.4
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ~>
136
+ - - "~>"
137
137
  - !ruby/object:Gem::Version
138
138
  version: 2.5.4
139
139
  description: Fetch, parse and normalize meta data from websites.
@@ -144,7 +144,7 @@ extra_rdoc_files:
144
144
  - LICENSE.txt
145
145
  - README.md
146
146
  files:
147
- - .document
147
+ - ".document"
148
148
  - Gemfile
149
149
  - Gemfile.lock
150
150
  - LICENSE.txt
@@ -171,17 +171,17 @@ require_paths:
171
171
  - lib
172
172
  required_ruby_version: !ruby/object:Gem::Requirement
173
173
  requirements:
174
- - - '>='
174
+ - - ">="
175
175
  - !ruby/object:Gem::Version
176
176
  version: '0'
177
177
  required_rubygems_version: !ruby/object:Gem::Requirement
178
178
  requirements:
179
- - - '>='
179
+ - - ">="
180
180
  - !ruby/object:Gem::Version
181
181
  version: '0'
182
182
  requirements: []
183
183
  rubyforge_project:
184
- rubygems_version: 2.4.5
184
+ rubygems_version: 2.5.1
185
185
  signing_key:
186
186
  specification_version: 4
187
187
  summary: Fetch, parse and normalize meta data from websites.