class Panchira::Narou::Novel18Resolver
Constants
- ID_REGEXP
- URL_REGEXP
Public Class Methods
new(url)
click to toggle source
Calls superclass method
# File lib/panchira/resolvers/narou_resolver.rb, line 11 def initialize(url) super(url) if id = @url.match(ID_REGEXP)[:id] @desc = fetch_page("https://novel18.syosetu.com/novelview/infotop/ncode/#{id}/") end end
Public Instance Methods
fetch_page(uri)
click to toggle source
# File lib/panchira/resolvers/narou_resolver.rb, line 19 def fetch_page(uri) u = URI.parse(uri) http = Net::HTTP.new(u.host, u.port) http.use_ssl = u.port == 443 res = http.get u.request_uri, {'cookie' => 'over18=yes;'} Nokogiri::HTML.parse(res.body, uri) end
parse_canonical_url()
click to toggle source
og:urlで指定されたncode.syosetu.com/~~~にアクセスすると301で戻されるので何もしない
# File lib/panchira/resolvers/narou_resolver.rb, line 42 def parse_canonical_url @url end
parse_description()
click to toggle source
# File lib/panchira/resolvers/narou_resolver.rb, line 28 def parse_description @desc&.xpath('//*[@id="noveltable1"]/tr/td')&.first&.text&.strip end