wahlrecht_de 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +16 -0
  3. data/Gemfile.lock +70 -0
  4. data/LICENSE.txt +20 -0
  5. data/README.rdoc +19 -0
  6. data/Rakefile +54 -0
  7. data/VERSION +1 -0
  8. data/bin/wahlrecht_de +5 -0
  9. data/doc/LICENSE_txt.html +109 -0
  10. data/doc/WahlrechtDe/Dataline.html +378 -0
  11. data/doc/WahlrechtDe/Runner.html +226 -0
  12. data/doc/WahlrechtDe/Survey.html +325 -0
  13. data/doc/WahlrechtDe.html +131 -0
  14. data/doc/created.rid +6 -0
  15. data/doc/images/add.png +0 -0
  16. data/doc/images/arrow_up.png +0 -0
  17. data/doc/images/brick.png +0 -0
  18. data/doc/images/brick_link.png +0 -0
  19. data/doc/images/bug.png +0 -0
  20. data/doc/images/bullet_black.png +0 -0
  21. data/doc/images/bullet_toggle_minus.png +0 -0
  22. data/doc/images/bullet_toggle_plus.png +0 -0
  23. data/doc/images/date.png +0 -0
  24. data/doc/images/delete.png +0 -0
  25. data/doc/images/find.png +0 -0
  26. data/doc/images/loadingAnimation.gif +0 -0
  27. data/doc/images/macFFBgHack.png +0 -0
  28. data/doc/images/package.png +0 -0
  29. data/doc/images/page_green.png +0 -0
  30. data/doc/images/page_white_text.png +0 -0
  31. data/doc/images/page_white_width.png +0 -0
  32. data/doc/images/plugin.png +0 -0
  33. data/doc/images/ruby.png +0 -0
  34. data/doc/images/tag_blue.png +0 -0
  35. data/doc/images/tag_green.png +0 -0
  36. data/doc/images/transparent.png +0 -0
  37. data/doc/images/wrench.png +0 -0
  38. data/doc/images/wrench_orange.png +0 -0
  39. data/doc/images/zoom.png +0 -0
  40. data/doc/index.html +86 -0
  41. data/doc/js/darkfish.js +155 -0
  42. data/doc/js/jquery.js +18 -0
  43. data/doc/js/navigation.js +142 -0
  44. data/doc/js/search.js +94 -0
  45. data/doc/js/search_index.js +1 -0
  46. data/doc/js/searcher.js +228 -0
  47. data/doc/rdoc.css +595 -0
  48. data/doc/table_of_contents.html +86 -0
  49. data/lib/dataline.rb +43 -0
  50. data/lib/runner.rb +16 -0
  51. data/lib/survey.rb +38 -0
  52. data/spec/dataline_spec.rb +7 -0
  53. data/spec/spec_helper.rb +12 -0
  54. data/spec/survey_spec.rb +7 -0
  55. data/wahlrecht_de.gemspec +113 -0
  56. metadata +208 -0
data/lib/runner.rb ADDED
@@ -0,0 +1,16 @@
1
+ require_relative 'survey'
2
+
3
+ module WahlrechtDe
4
+ class Runner
5
+
6
+ def initialize
7
+ @line_range = (1..7)
8
+ end
9
+
10
+ def run
11
+ survey = Survey.new
12
+ @line_range.each do |row| survey.parse row end
13
+ survey.to_s
14
+ end
15
+ end
16
+ end
data/lib/survey.rb ADDED
@@ -0,0 +1,38 @@
1
+ require 'open-uri'
2
+ require 'nokogiri'
3
+ require_relative 'dataline'
4
+
5
+ module WahlrechtDe
6
+ class Survey
7
+
8
+ attr_reader :rows
9
+
10
+ def initialize
11
+ doc = Nokogiri::HTML(open("http://www.wahlrecht.de/umfragen/index.htm"))
12
+ @rows = doc.xpath("//table/tbody/tr")
13
+ @datalines = []
14
+ end
15
+
16
+ def parse index
17
+ row = @rows[index]
18
+ row_data = parse_rowdata row
19
+ @datalines.push(Dataline.new(row.at_xpath("th/text()").to_s, row_data))
20
+ end
21
+
22
+ def parse_rowdata row
23
+ row_data = []
24
+ datas = row.xpath("td")
25
+ datas.each do |data|
26
+ row_data.push(data.at_xpath("text()").to_s)
27
+ end
28
+ row_data
29
+ end
30
+
31
+ def to_s
32
+ @datalines.each do |dataline|
33
+ puts dataline
34
+ end
35
+ end
36
+
37
+ end
38
+ end
@@ -0,0 +1,7 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe "WahlrechtDe" do
4
+ it "fails" do
5
+ fail "hey buddy, you should probably rename this file and start specing for real"
6
+ end
7
+ end
@@ -0,0 +1,12 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
3
+ require 'rspec'
4
+ require 'wahlrecht-de'
5
+
6
+ # Requires supporting files with custom matchers and macros, etc,
7
+ # in ./support/ and its subdirectories.
8
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
9
+
10
+ RSpec.configure do |config|
11
+
12
+ end
@@ -0,0 +1,7 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe "WahlrechtDe" do
4
+ it "fails" do
5
+ fail "hey buddy, you should probably rename this file and start specing for real"
6
+ end
7
+ end
@@ -0,0 +1,113 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "wahlrecht_de"
8
+ s.version = "0.1.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Tobi Fankh\u{e4}nel"]
12
+ s.date = "2013-08-28"
13
+ s.description = "= wahlrecht_de\n\nProvides summary analysis of current poll results from wahlrecht.de\n\n== Contributing to wahlrecht_de\n \n* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.\n* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.\n* Fork the project.\n* Start a feature/bugfix branch.\n* Commit and push until you are happy with your contribution.\n* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.\n* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.\n\n== Copyright\n\nCopyright (c) 2013 Tobi Fankh\u{e4}nel. See LICENSE.txt for\nfurther details.\n\n"
14
+ s.email = "fank1@gmx.de"
15
+ s.executables = ["wahlrecht_de"]
16
+ s.extra_rdoc_files = [
17
+ "LICENSE.txt",
18
+ "README.rdoc"
19
+ ]
20
+ s.files = [
21
+ "Gemfile",
22
+ "Gemfile.lock",
23
+ "LICENSE.txt",
24
+ "README.rdoc",
25
+ "Rakefile",
26
+ "VERSION",
27
+ "bin/wahlrecht_de",
28
+ "doc/LICENSE_txt.html",
29
+ "doc/WahlrechtDe.html",
30
+ "doc/WahlrechtDe/Dataline.html",
31
+ "doc/WahlrechtDe/Runner.html",
32
+ "doc/WahlrechtDe/Survey.html",
33
+ "doc/created.rid",
34
+ "doc/images/add.png",
35
+ "doc/images/arrow_up.png",
36
+ "doc/images/brick.png",
37
+ "doc/images/brick_link.png",
38
+ "doc/images/bug.png",
39
+ "doc/images/bullet_black.png",
40
+ "doc/images/bullet_toggle_minus.png",
41
+ "doc/images/bullet_toggle_plus.png",
42
+ "doc/images/date.png",
43
+ "doc/images/delete.png",
44
+ "doc/images/find.png",
45
+ "doc/images/loadingAnimation.gif",
46
+ "doc/images/macFFBgHack.png",
47
+ "doc/images/package.png",
48
+ "doc/images/page_green.png",
49
+ "doc/images/page_white_text.png",
50
+ "doc/images/page_white_width.png",
51
+ "doc/images/plugin.png",
52
+ "doc/images/ruby.png",
53
+ "doc/images/tag_blue.png",
54
+ "doc/images/tag_green.png",
55
+ "doc/images/transparent.png",
56
+ "doc/images/wrench.png",
57
+ "doc/images/wrench_orange.png",
58
+ "doc/images/zoom.png",
59
+ "doc/index.html",
60
+ "doc/js/darkfish.js",
61
+ "doc/js/jquery.js",
62
+ "doc/js/navigation.js",
63
+ "doc/js/search.js",
64
+ "doc/js/search_index.js",
65
+ "doc/js/searcher.js",
66
+ "doc/rdoc.css",
67
+ "doc/table_of_contents.html",
68
+ "lib/dataline.rb",
69
+ "lib/runner.rb",
70
+ "lib/survey.rb",
71
+ "spec/dataline_spec.rb",
72
+ "spec/spec_helper.rb",
73
+ "spec/survey_spec.rb",
74
+ "wahlrecht_de.gemspec"
75
+ ]
76
+ s.homepage = "http://github.com/Tobi-Fankhaenel/wahlrecht_de"
77
+ s.licenses = ["MIT"]
78
+ s.require_paths = ["lib"]
79
+ s.required_ruby_version = Gem::Requirement.new(">= 2.0")
80
+ s.rubygems_version = "2.0.3"
81
+ s.summary = "Provides summary analysis of current poll results from wahlrecht.de"
82
+
83
+ if s.respond_to? :specification_version then
84
+ s.specification_version = 4
85
+
86
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
87
+ s.add_development_dependency(%q<rspec>, ["~> 2.14.1"])
88
+ s.add_development_dependency(%q<rdoc>, ["~> 4.0.0"])
89
+ s.add_development_dependency(%q<bundler>, ["~> 1.0"])
90
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.7"])
91
+ s.add_development_dependency(%q<simplecov>, [">= 0.7.1"])
92
+ s.add_development_dependency(%q<nokogiri>, ["~> 1.5.10"])
93
+ s.add_development_dependency(%q<rake>, ["~> 10.1.0"])
94
+ else
95
+ s.add_dependency(%q<rspec>, ["~> 2.14.1"])
96
+ s.add_dependency(%q<rdoc>, ["~> 4.0.0"])
97
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
98
+ s.add_dependency(%q<jeweler>, ["~> 1.8.7"])
99
+ s.add_dependency(%q<simplecov>, [">= 0.7.1"])
100
+ s.add_dependency(%q<nokogiri>, ["~> 1.5.10"])
101
+ s.add_dependency(%q<rake>, ["~> 10.1.0"])
102
+ end
103
+ else
104
+ s.add_dependency(%q<rspec>, ["~> 2.14.1"])
105
+ s.add_dependency(%q<rdoc>, ["~> 4.0.0"])
106
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
107
+ s.add_dependency(%q<jeweler>, ["~> 1.8.7"])
108
+ s.add_dependency(%q<simplecov>, [">= 0.7.1"])
109
+ s.add_dependency(%q<nokogiri>, ["~> 1.5.10"])
110
+ s.add_dependency(%q<rake>, ["~> 10.1.0"])
111
+ end
112
+ end
113
+
metadata ADDED
@@ -0,0 +1,208 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: wahlrecht_de
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Tobi Fankhänel
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-08-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: 2.14.1
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 2.14.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: rdoc
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 4.0.0
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: 4.0.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '1.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: jeweler
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.8.7
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: 1.8.7
69
+ - !ruby/object:Gem::Dependency
70
+ name: simplecov
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: 0.7.1
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: 0.7.1
83
+ - !ruby/object:Gem::Dependency
84
+ name: nokogiri
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 1.5.10
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ~>
95
+ - !ruby/object:Gem::Version
96
+ version: 1.5.10
97
+ - !ruby/object:Gem::Dependency
98
+ name: rake
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 10.1.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 10.1.0
111
+ description: "= wahlrecht_de\n\nProvides summary analysis of current poll results
112
+ from wahlrecht.de\n\n== Contributing to wahlrecht_de\n \n* Check out the latest
113
+ master to make sure the feature hasn't been implemented or the bug hasn't been fixed
114
+ yet.\n* Check out the issue tracker to make sure someone already hasn't requested
115
+ it and/or contributed it.\n* Fork the project.\n* Start a feature/bugfix branch.\n*
116
+ Commit and push until you are happy with your contribution.\n* Make sure to add
117
+ tests for it. This is important so I don't break it in a future version unintentionally.\n*
118
+ Please try not to mess with the Rakefile, version, or history. If you want to have
119
+ your own version, or is otherwise necessary, that is fine, but please isolate to
120
+ its own commit so I can cherry-pick around it.\n\n== Copyright\n\nCopyright (c)
121
+ 2013 Tobi Fankhänel. See LICENSE.txt for\nfurther details.\n\n"
122
+ email: fank1@gmx.de
123
+ executables:
124
+ - wahlrecht_de
125
+ extensions: []
126
+ extra_rdoc_files:
127
+ - LICENSE.txt
128
+ - README.rdoc
129
+ files:
130
+ - Gemfile
131
+ - Gemfile.lock
132
+ - LICENSE.txt
133
+ - README.rdoc
134
+ - Rakefile
135
+ - VERSION
136
+ - bin/wahlrecht_de
137
+ - doc/LICENSE_txt.html
138
+ - doc/WahlrechtDe.html
139
+ - doc/WahlrechtDe/Dataline.html
140
+ - doc/WahlrechtDe/Runner.html
141
+ - doc/WahlrechtDe/Survey.html
142
+ - doc/created.rid
143
+ - doc/images/add.png
144
+ - doc/images/arrow_up.png
145
+ - doc/images/brick.png
146
+ - doc/images/brick_link.png
147
+ - doc/images/bug.png
148
+ - doc/images/bullet_black.png
149
+ - doc/images/bullet_toggle_minus.png
150
+ - doc/images/bullet_toggle_plus.png
151
+ - doc/images/date.png
152
+ - doc/images/delete.png
153
+ - doc/images/find.png
154
+ - doc/images/loadingAnimation.gif
155
+ - doc/images/macFFBgHack.png
156
+ - doc/images/package.png
157
+ - doc/images/page_green.png
158
+ - doc/images/page_white_text.png
159
+ - doc/images/page_white_width.png
160
+ - doc/images/plugin.png
161
+ - doc/images/ruby.png
162
+ - doc/images/tag_blue.png
163
+ - doc/images/tag_green.png
164
+ - doc/images/transparent.png
165
+ - doc/images/wrench.png
166
+ - doc/images/wrench_orange.png
167
+ - doc/images/zoom.png
168
+ - doc/index.html
169
+ - doc/js/darkfish.js
170
+ - doc/js/jquery.js
171
+ - doc/js/navigation.js
172
+ - doc/js/search.js
173
+ - doc/js/search_index.js
174
+ - doc/js/searcher.js
175
+ - doc/rdoc.css
176
+ - doc/table_of_contents.html
177
+ - lib/dataline.rb
178
+ - lib/runner.rb
179
+ - lib/survey.rb
180
+ - spec/dataline_spec.rb
181
+ - spec/spec_helper.rb
182
+ - spec/survey_spec.rb
183
+ - wahlrecht_de.gemspec
184
+ homepage: http://github.com/Tobi-Fankhaenel/wahlrecht_de
185
+ licenses:
186
+ - MIT
187
+ metadata: {}
188
+ post_install_message:
189
+ rdoc_options: []
190
+ require_paths:
191
+ - lib
192
+ required_ruby_version: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - '>='
195
+ - !ruby/object:Gem::Version
196
+ version: '2.0'
197
+ required_rubygems_version: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - '>='
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ requirements: []
203
+ rubyforge_project:
204
+ rubygems_version: 2.0.3
205
+ signing_key:
206
+ specification_version: 4
207
+ summary: Provides summary analysis of current poll results from wahlrecht.de
208
+ test_files: []