class DMMCrawler::Ranking::DojinRanking
Constants
- FETCHING_LIMITATION
Public Class Methods
new(agent:, submedia: nil, term: nil)
click to toggle source
# File lib/dmm-crawler/ranking/dojin_ranking.rb, line 10 def initialize(agent:, submedia: nil, term: nil) @agent = discriminate_agent(agent) @submedia = submedia @term = term @url = File.join(BASE_URL, "/dc/doujin/-/ranking-all/=/sort=popular/submedia=#{@submedia}/term=#{@term}") end
Public Instance Methods
arts()
click to toggle source
# File lib/dmm-crawler/ranking/dojin_ranking.rb, line 17 def arts arts = page.search('.rank-rankListItem.fn-setPurchaseChange').take(FETCHING_LIMITATION).map do |element| sleep_each do url = File.join(BASE_URL, element.search('.rank-name a').first.attributes['href'].value) DojinAttributes.new(url, agent: @agent).to_a end end arts.map.with_index(1) do |(title, title_link, image_url, submedia, author, price, affiliateable, tags), rank| { title: title, title_link: title_link, image_url: image_url, submedia: submedia, author: author, rank: rank, price: price, affiliateable: affiliateable, tags: tags } end end