hacker_news 0.2.1 → 0.2.2

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 0.2.2
data/hacker_news.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "hacker_news"
8
- s.version = "0.2.1"
8
+ s.version = "0.2.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Aleksandr Lossenko"]
@@ -2,15 +2,18 @@ module HackerNews
2
2
 
3
3
  class Scraper
4
4
 
5
- URL = "http://news.ycombinator.com"
5
+ URL = "news.ycombinator.com"
6
6
 
7
7
  def self.articles(pages = 5)
8
8
 
9
- pagination = ""
9
+ pagination = "/"
10
10
  result = []
11
11
 
12
12
  0.upto(pages - 1) do |page|
13
- doc = Nokogiri::HTML(open(URL+pagination))
13
+ response = Net::HTTP.start( URL, 80 ) do |http|
14
+ http.get(pagination, "User-Agent" => "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.872.0 Safari/535.2").body
15
+ end
16
+ doc = Nokogiri::HTML(response)
14
17
  articles = doc.css("td.title > a:first-child")
15
18
  next_page = articles.pop
16
19
  pagination = next_page[:href]
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hacker_news
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 19
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 2
9
- - 1
10
- version: 0.2.1
9
+ - 2
10
+ version: 0.2.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Aleksandr Lossenko
@@ -29,10 +29,10 @@ dependencies:
29
29
  - 4
30
30
  - 0
31
31
  version: 1.4.0
32
- requirement: *id001
33
- prerelease: false
34
32
  name: nokogiri
33
+ prerelease: false
35
34
  type: :runtime
35
+ requirement: *id001
36
36
  - !ruby/object:Gem::Dependency
37
37
  version_requirements: &id002 !ruby/object:Gem::Requirement
38
38
  none: false
@@ -43,10 +43,10 @@ dependencies:
43
43
  segments:
44
44
  - 0
45
45
  version: "0"
46
- requirement: *id002
47
- prerelease: false
48
46
  name: iconv
47
+ prerelease: false
49
48
  type: :runtime
49
+ requirement: *id002
50
50
  - !ruby/object:Gem::Dependency
51
51
  version_requirements: &id003 !ruby/object:Gem::Requirement
52
52
  none: false
@@ -59,10 +59,10 @@ dependencies:
59
59
  - 0
60
60
  - 0
61
61
  version: 1.0.0
62
- requirement: *id003
63
- prerelease: false
64
62
  name: bundler
63
+ prerelease: false
65
64
  type: :development
65
+ requirement: *id003
66
66
  - !ruby/object:Gem::Dependency
67
67
  version_requirements: &id004 !ruby/object:Gem::Requirement
68
68
  none: false
@@ -75,10 +75,10 @@ dependencies:
75
75
  - 5
76
76
  - 2
77
77
  version: 1.5.2
78
- requirement: *id004
79
- prerelease: false
80
78
  name: jeweler
79
+ prerelease: false
81
80
  type: :development
81
+ requirement: *id004
82
82
  - !ruby/object:Gem::Dependency
83
83
  version_requirements: &id005 !ruby/object:Gem::Requirement
84
84
  none: false
@@ -89,10 +89,10 @@ dependencies:
89
89
  segments:
90
90
  - 0
91
91
  version: "0"
92
- requirement: *id005
93
- prerelease: false
94
92
  name: rcov
93
+ prerelease: false
95
94
  type: :development
95
+ requirement: *id005
96
96
  - !ruby/object:Gem::Dependency
97
97
  version_requirements: &id006 !ruby/object:Gem::Requirement
98
98
  none: false
@@ -103,10 +103,10 @@ dependencies:
103
103
  segments:
104
104
  - 0
105
105
  version: "0"
106
- requirement: *id006
107
- prerelease: false
108
106
  name: fakeweb
107
+ prerelease: false
109
108
  type: :development
109
+ requirement: *id006
110
110
  description: Fetches newest 5 pages from Hacker News and returns convenient ruby objects
111
111
  email: aleksandr.lossenko@gmail.com
112
112
  executables: []