Class: OpenDMM::Engine::DMM::Movie
- Defined in:
- lib/opendmm/engines/dmm.rb
Instance Method Summary collapse
-
#initialize(query) ⇒ Movie
constructor
A new instance of Movie.
Methods inherited from Movie
Constructor Details
#initialize(query) ⇒ Movie
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/opendmm/engines/dmm.rb', line 56 def initialize(query) search = Search.new(query, Site.search(query)) super(query, Site.get(search.result)) @details.thumbnail_image = @html.at_css('#sample-video img')['src'] @details.title = @html.css('#title').text begin @details.cover_image = @html.at_css('#sample-video a')['href'] rescue StandardError @details.cover_image = @details.thumbnail_image end details_table = @html.at_xpath('//div[@class="page-detail"]/table/tr/td[1]/table') details_table.css('tr').each do |tr| first = tr.css('td')[0] second = tr.css('td')[1] case first.text when /配信開始日/ @details.release_date = second.text when /収録時間/ @details.movie_length = second.text when /出演者/ @details.actresses = second.css('span').map(&:text) when /監督/ @details.directors = second.css('span').map(&:text) when /シリーズ/ @details.series = second.text when /メーカー/ @details.maker = second.text when /レーベル/ @details.label = second.text when /ジャンル/ @details.genres = second.css('span').map(&:text) when /品番/ if second.text =~ /([a-z]+)(\d+)/i @details.code = "#{$1.upcase}-#{$2.to_i.to_s.rjust(3, '0')}" else @details.code = second.text end end end @details.description = details_table.next_element.next_element.xpath('text()').text end |