class Mmonews::Scraper

Attributes

elapsed_time[RW]
url[RW]

Public Class Methods

all() click to toggle source
# File lib/mmonews/scraper.rb, line 16
def self.all
  @@all
end
new(url = "") click to toggle source
# File lib/mmonews/scraper.rb, line 7
def initialize(url = "")
  self.url = url if self.class.valid_url?(url)
  self.save
end
valid_url?(url) click to toggle source
# File lib/mmonews/scraper.rb, line 33
def self.valid_url?(url)
  url =~ /\A#{URI::regexp}\z/ ? true : false
end

Public Instance Methods

document() click to toggle source
# File lib/mmonews/scraper.rb, line 20
def document
  start_time = Time.now
  begin
    @document ||= Nokogiri::HTML(open(self.url))
  rescue StandardError => error
    puts "Nokogiri invalid url:\n #{self.class} :: #{self}"
    puts "url: #{self.url}"
  end
  end_time = Time.now
  self.elapsed_time = (end_time - start_time)
  @document
end
save() click to toggle source
# File lib/mmonews/scraper.rb, line 12
def save
  self.class.all << self
end