Sha256: 50522e42f3afeba41b6c61bde89e6c3ebbd0fe74830884e52f91f7e3acbb32a4
Contents?: true
Size: 969 Bytes
Versions: 1
Compression:
Stored size: 969 Bytes
Contents
require "nokogiri" require "rest-client" class ICheckMovies attr_reader :url def initialize(url) @url = url @movie = Struct.new(:imdb_link, :title, :year, :details, :id, :order) end def self.fetch(url) ICheckMovies.new(url) end def movies @_movies ||= content.css("li.movie").map do |movie| @movie.new( movie.at_css("a.optionIMDB").attr("href"), movie.at_css("h2 a").content, movie.at_css("a.tagNamespaceYear").content.to_i, "http://www.icheckmovies.com" + movie.at_css("a.dvdCoverSmall").attr("href"), movie.at_css("a.optionIMDB").attr("href").match(/(tt\d{7})/).to_a[1], movie.at_css(".rank") ? movie.at_css(".rank").content.to_i : 0 ) end end def name @_name ||= content.at_css("h1").content end private def content @_content ||= Nokogiri::HTML(data) end def data @_data ||= RestClient.get(@url, timeout: 10) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
icheckmovies-0.6.1 | lib/icheckmovies.rb |