class Samao::Item

Public Class Methods

new(params={}) { |self| ... } click to toggle source
# File lib/samao/item.rb, line 5
def initialize(params={})
  matchable

  @prop = {}   # usefull properties
  @raw = {}    # nodes go here.

  @baseurl = params[:baseurl].to_s

  set_raw :item, params[:raw_item] if params[:raw_item]

  yield self if block_given?

  self
end

Public Instance Methods

extract() click to toggle source
# File lib/samao/item.rb, line 20
def extract
  @selector.each do |name, sel|
    found(name, @raw[:item].css(sel))
  end

  self
end
Also aliased as: run
prop(name=nil) click to toggle source
# File lib/samao/item.rb, line 42
def prop(name=nil)
  if name
    return @prop[name]
  else
    return @prop
  end
end
raw(name=nil) click to toggle source
# File lib/samao/item.rb, line 54
def raw(name=nil)
  if name
    return @raw[name]
  else
    return @raw
  end
end
run()
Alias for: extract
set(name, value) click to toggle source
# File lib/samao/item.rb, line 29
def set(name, value)
  @prop[name] = value
end
set_baseurl(baseurl=nil) click to toggle source
# File lib/samao/item.rb, line 38
def set_baseurl(baseurl=nil)
  @prop[:baseurl] = baseurl || @baseurl
end
set_raw(name, value) click to toggle source
# File lib/samao/item.rb, line 50
def set_raw(name, value)
  @raw[name] = value
end
set_url(name, value) click to toggle source
# File lib/samao/item.rb, line 33
def set_url(name, value)
  value = URI.join @baseurl, value if @baseurl
  set(name, value.to_s)
end