Class: TopRecipes::Scraper
- Inherits:
-
Object
- Object
- TopRecipes::Scraper
- Defined in:
- lib/top_recipes/scraper.rb
Class Method Summary collapse
- .scrape_additional_info(recipe) ⇒ Object
- .scrape_and_create_recipes_food2fork ⇒ Object
- .scrape_recipes_page(url) ⇒ Object
Class Method Details
.scrape_additional_info(recipe) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/top_recipes/scraper.rb', line 19 def self.scrape_additional_info(recipe) raise error if !(recipe.is_a?(TopRecipes::Recipe)) site = self.scrape_recipes_page(recipe.url) recipe.ingredients = site.css("div.span5 ul").text.strip.split("\n\t\t\t\t\n\t\t\t\t ") recipe.directions = site.css("div.span5 a")[1].attribute("href").value end |
.scrape_and_create_recipes_food2fork ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/top_recipes/scraper.rb', line 7 def self.scrape_and_create_recipes_food2fork self.scrape_recipes_page("http://food2fork.com/").css("div.img-polaroid").each do |r| name = r.css("span.recipe-name").text.strip recipe = TopRecipes::Recipe.new(name) recipe. = r.css("span.badge-important").text.strip recipe.url = "http://food2fork.com#{r.css("a.recipe-link").attribute("href").value.strip}" recipe. = r.css("span.publisher").text.strip self.scrape_additional_info(recipe) end end |
.scrape_recipes_page(url) ⇒ Object
3 4 5 |
# File 'lib/top_recipes/scraper.rb', line 3 def self.scrape_recipes_page(url) Nokogiri::HTML(open(url)) end |