module Quotes500

require “nokogiri”

Constants

BASE_URL
VERSION

Public Class Methods

allQuotes(quoteSet) click to toggle source

TOTAL_PAGE = 20

# File lib/quotes500.rb, line 60
def self.allQuotes(quoteSet)
  require 'json'
  totalQuotes = []
  quoteSet.times do |i|
    page = i+1
    parser = HTMLParser.new(BASE_URL, page)
    parser.retrieveQuotes
    totalQuotes.concat(parser.quotes)
  end
  return totalQuotes
end
convertToJSON(set) click to toggle source
# File lib/quotes500.rb, line 72
def self.convertToJSON(set)
  require 'json'
  rootObj = {:quotes => self.allQuotes(set)}
  # json = self.allQuotes.to_json
  json = JSON.pretty_generate(rootObj)
  return json
end
createTargetUrl() click to toggle source
# File lib/quotes500.rb, line 90
def self.createTargetUrl
  return BASE_URL+"1/"
end
execute(quoteSet) click to toggle source
# File lib/quotes500.rb, line 86
def self.execute(quoteSet)
  self.generateJSON(quoteSet)
end
generateJSON(quoteSet) click to toggle source
# File lib/quotes500.rb, line 80
def self.generateJSON(quoteSet)
  File.open("temp.json", "w") do |f|
    f.write(self.convertToJSON(quoteSet))
  end
end
getQuoteSet() click to toggle source
# File lib/quotes500.rb, line 99
def self.getQuoteSet
  pageSource = self.loadPage
  quoteDiv = pageSource.css('div.blog-quote').count
end
loadPage() click to toggle source
# File lib/quotes500.rb, line 94
def self.loadPage
  page = Nokogiri::HTML(open(self.createTargetUrl))
  return page
end