class NYCFlightDeals::Deal

Attributes

dates[RW]
description[RW]
price[RW]
route[RW]
stopover[RW]
url[RW]

Public Class Methods

recent() click to toggle source
# File lib/nyc_flight_deals/deal.rb, line 4
def self.recent 
  self.scrape_deals
end
scrape_deals() click to toggle source
# File lib/nyc_flight_deals/deal.rb, line 8
def self.scrape_deals
  flights = []

  flights << self.scrape_first_flight
  flights << self.scrape_second_flight
  flights << self.scrape_third_flight
  flights 
end
scrape_first_flight() click to toggle source
# File lib/nyc_flight_deals/deal.rb, line 17
def self.scrape_first_flight
  doc = Nokogiri::HTML(open("http://www.theflightdeal.com/category/flight-deals/nyc/"))

  flight_1 = self.new 
  flight_1.description = doc.css(".entry-content h1 a")[0].text
  flight_1.url = doc.css("div .entry-content h1 a").first.attribute("href").value
  
  page = Nokogiri::HTML(open("#{flight_1.url}"))
  flight_1.dates = page.search("h2")[1].next_element.text
  flight_1.search = page.search("h2")[2].next_element.children[1].text

  flight_1
  
end
scrape_second_flight() click to toggle source
# File lib/nyc_flight_deals/deal.rb, line 32
def self.scrape_second_flight
  doc = Nokogiri::HTML(open("http://www.theflightdeal.com/category/flight-deals/nyc/"))
  
  flight_2 = self.new 
  flight_2.description = doc.css(".entry-content h1 a")[1].text
  flight_2.url = doc.css("div .entry-content h1 a")[1].attribute("href").value
  
  page = Nokogiri::HTML(open("#{flight_2.url}"))
  flight_2.dates = page.search("h2")[1].next_element.text
  flight_2.search = page.search("h2")[2].next_element.children[1].text
  
  flight_2
end
scrape_third_flight() click to toggle source
# File lib/nyc_flight_deals/deal.rb, line 46
def self.scrape_third_flight
  doc = Nokogiri::HTML(open("http://www.theflightdeal.com/category/flight-deals/nyc/"))
  
  flight_3 = self.new 
  flight_3.description = doc.css(".entry-content h1 a")[2].text
  flight_3.url = doc.css("div .entry-content h1 a")[2].attribute("href").value
  
  page = Nokogiri::HTML(open("#{flight_3.url}"))
  flight_3.dates = page.search("h2")[1].next_element.text
  flight_3.search = page.search("h2")[2].next_element.children[1].text
  
  flight_3
end