class LocalSkiReport::Scraper
Public Class Methods
create_resort_report(table)
click to toggle source
# File lib/local_ski_report/scraper.rb, line 21 def self.create_resort_report(table) table.collect do |row| new_resort = LocalSkiReport::Resort.create(row) new_report = LocalSkiReport::Report.create(row) new_resort.add_report(new_report) new_resort end end
get_page(url)
click to toggle source
# File lib/local_ski_report/scraper.rb, line 3 def self.get_page(url) html = open(url) Nokogiri::HTML(html) end
get_table(html)
click to toggle source
# File lib/local_ski_report/scraper.rb, line 8 def self.get_table(html) table = html.css('table') table_rows = table.css('tr') table_rows.slice(2, table_rows.size - 3) end
scrap_report_page(report)
click to toggle source
# File lib/local_ski_report/scraper.rb, line 30 def self.scrap_report_page(report) url = "https://www.onthesnow.com#{report.resort.url}" doc = self.get_page(url) report.get_xt_report_info(doc) end
scrap_resorts_page(state_url)
click to toggle source
# File lib/local_ski_report/scraper.rb, line 14 def self.scrap_resorts_page(state_url) url = "https://www.onthesnow.com/#{state_url}/skireport.html" doc = self.get_page(url) table = get_table(doc) self.create_resort_report(table) end