class PageParser

Public Class Methods

new(page, options={}) click to toggle source
# File lib/allrecipes/page_parser.rb, line 3
def initialize(page, options={})
  @page = page
  @recipes = []
  @options = options
  @limit = options[:limit]
  get_recipes
end

Public Instance Methods

filtered_recipes() click to toggle source
# File lib/allrecipes/page_parser.rb, line 27
def filtered_recipes
 @limit ? recipe_info.take(@limit) : recipe_info
end
get_recipes() click to toggle source
# File lib/allrecipes/page_parser.rb, line 43
def get_recipes
  filtered_recipes.each do |info|
    recipe_link = recipe_link(info)
    @recipes <<  RecipeParser.new(recipe_link, @options[:keys]).recipe
  end
end
recipe_info() click to toggle source
# File lib/allrecipes/page_parser.rb, line 19
def recipe_info
  if @options[:type] == "ingredient"
    @page.search(recipe_info_class)
  else
    recipes_grid.search(recipe_info_class)
  end
end
recipe_info_class() click to toggle source
# File lib/allrecipes/page_parser.rb, line 11
def recipe_info_class
   ".recipe-info"
end
recipes() click to toggle source
# File lib/allrecipes/page_parser.rb, line 50
def recipes
  @recipes
end
recipes_grid() click to toggle source
# File lib/allrecipes/page_parser.rb, line 35
def recipes_grid
  @page.search(recipes_grid_class)[-1]
end
recipes_grid_class() click to toggle source
# File lib/allrecipes/page_parser.rb, line 31
def recipes_grid_class
  ".grid-view"
end
title_class() click to toggle source
# File lib/allrecipes/page_parser.rb, line 15
def title_class
  ".title"
end