Class: NcodeSyosetu::Model::Toc
- Inherits:
-
Object
- Object
- NcodeSyosetu::Model::Toc
- Defined in:
- lib/ncode_syosetu/model/toc.rb
Instance Attribute Summary collapse
-
#abstract ⇒ Object
Returns the value of attribute abstract.
-
#author ⇒ Object
Returns the value of attribute author.
-
#episodes ⇒ Object
Returns the value of attribute episodes.
-
#title ⇒ Object
Returns the value of attribute title.
-
#url ⇒ Object
Returns the value of attribute url.
Instance Method Summary collapse
- #html ⇒ Object
-
#initialize(page) ⇒ Toc
constructor
A new instance of Toc.
Constructor Details
#initialize(page) ⇒ Toc
Returns a new instance of Toc.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/ncode_syosetu/model/toc.rb', line 6 def initialize(page) @url = page.uri.to_s @title = page.title @author = page.search(".novel_writername").text.chomp @abstract = page.search(".novel_ex").text.chomp @episodes = [] page.at(".index_box").children.each do |sub_item| next unless sub_item.matches?('.chapter_title, .novel_sublist2') episode = { text: sub_item.text.gsub(/\s+/, " ").chomp } link = sub_item.search("a") unless link.empty? if link.attr("href").value =~ %r[/(\d+)/?$] episode[:number] = $1.to_i end end @episodes << episode end @body_html = page.search(".novel_writername").to_html << page.search(".novel_ex").to_html << page.search(".index_box").to_html end |
Instance Attribute Details
#abstract ⇒ Object
Returns the value of attribute abstract.
4 5 6 |
# File 'lib/ncode_syosetu/model/toc.rb', line 4 def abstract @abstract end |
#author ⇒ Object
Returns the value of attribute author.
4 5 6 |
# File 'lib/ncode_syosetu/model/toc.rb', line 4 def @author end |
#episodes ⇒ Object
Returns the value of attribute episodes.
4 5 6 |
# File 'lib/ncode_syosetu/model/toc.rb', line 4 def episodes @episodes end |
#title ⇒ Object
Returns the value of attribute title.
4 5 6 |
# File 'lib/ncode_syosetu/model/toc.rb', line 4 def title @title end |
#url ⇒ Object
Returns the value of attribute url.
4 5 6 |
# File 'lib/ncode_syosetu/model/toc.rb', line 4 def url @url end |
Instance Method Details
#html ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/ncode_syosetu/model/toc.rb', line 31 def html <<-HTML <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>#{@title}</title> </head> <body> #{@body_html} </body> </html> HTML end |