class Screencast
Constants
- URL
Attributes
image[R]
link[R]
title[R]
Public Class Methods
all()
click to toggle source
# File lib/peepcode.rb, line 8 def self.all i = 0 screencasts = [] count = self.titles.length while i < count sc = Screencast.new( titles[i], image_urls[i], links[i] ) screencasts << sc i += 1 end screencasts.collect(&:to_json) end
new(title, image, link)
click to toggle source
# File lib/peepcode.rb, line 30 def initialize(title, image, link) @title = title @image = image @link = link end
Private Class Methods
doc()
click to toggle source
# File lib/peepcode.rb, line 36 def self.doc @doc ||= Nokogiri::HTML(open URL) end
image_urls()
click to toggle source
# File lib/peepcode.rb, line 44 def self.image_urls @image_urls ||= doc.css('.covers img').collect{|i| "https://peepcode.com" + i.attributes['src'] } end
links()
click to toggle source
# File lib/peepcode.rb, line 48 def self.links @links ||= doc.css('.covers a').collect{|a| "https://peepcode.com" + a.attributes['href'] } end
titles()
click to toggle source
# File lib/peepcode.rb, line 40 def self.titles @titles ||= doc.css('.covers img').collect{|i| i.attributes['src'].value.split("/")[-1].split(".")[0].split("-").collect(&:capitalize).join(' ') } end
Public Instance Methods
to_json()
click to toggle source
# File lib/peepcode.rb, line 20 def to_json { title: @title, image: @image, link: @link } end