Sha256: f41b74aa04f237a17586a522b0199a3ec38f076a4a03cd79cb68a9311057ad3f

Contents?: true

Size: 1.12 KB

Versions: 1

Compression:

Stored size: 1.12 KB

Contents

class NewMovies::Scraper

  def self.scrape_coming_soon_movies
    doc = Nokogiri::HTML(open("https://www.cinemark.com/movies/coming-soon"))
    doc.css("div.card .title").collect do |new_movie|
        NewMovies::Movie.new(new_movie.inner_text,
        "https://www.cinemark.com#{new_movie.attribute("href").value}")
    end

  end

  def self.scrape_movie_details(movie)
    doc = Nokogiri::HTML(open("#{movie.url}"))
    attribute_values ={}
    attributes = {"Release Dates" => "release_date", "Rating" => "rating", "Runtime" => "runtime", "Genre" => "genre", "Cast" => "cast", "Director" => "director", "Synopsis" => "synopsis"}
    attributes.each do |attribute, v|
      if doc.xpath("//h3[contains(text(), '#{attribute}')]").text.include?("#{attribute}")
         attribute_values[[attributes[attribute]].join.to_sym] = doc.xpath("//h3[contains(text(), '#{attribute}')]/following-sibling::p")[0].text.strip
      end
      if doc.xpath("//h3[contains(text(), 'Official Site')]").text.strip.include?("Official Site")
        attribute_values["movie_site"] = doc.css("p.trunc").text.strip
      end
    end
    attribute_values
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
new_movies_cinemark-0.1.12 lib/new_movies/cinemark_scraper.rb