Sha256: 0c0515f5d5f291fc2ea5c7d9f8ffbf6529c7c67f15aaa0b31f1e5b24fdfee879
Contents?: true
Size: 1.3 KB
Versions: 4
Compression:
Stored size: 1.3 KB
Contents
module NcodeSyosetu module Model class Toc attr_accessor :title, :author, :abstract, :url, :episodes 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.search(".novel_sublist tr").each do |sub_item| 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(".novel_sublist").to_html end 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 end end end
Version data entries
4 entries across 4 versions & 1 rubygems