class Elsmore::Document
Attributes
emitter[RW]
url[RW]
Public Class Methods
new(url, parent = nil)
click to toggle source
# File lib/elsmore/document.rb, line 8 def initialize url, parent = nil self.url = Elsmore::Url.new(url, parent) end
Public Instance Methods
data()
click to toggle source
# File lib/elsmore/document.rb, line 22 def data doc.to_xml end
doc()
click to toggle source
# File lib/elsmore/document.rb, line 38 def doc @doc ||= begin html = HTTParty.get(url.canonical_url) Oga.parse_html(html) end end
links()
click to toggle source
# File lib/elsmore/document.rb, line 12 def links @links ||= begin doc.xpath('//a').map do |element| element.attribute('href') end.compact.map(&:value).map do |href| Elsmore::Document.new(href, url) end.compact end end
rewrite()
click to toggle source
# File lib/elsmore/document.rb, line 32 def rewrite rewriter = Elsmore::Rewriter.new(self) rewriter.emitter = emitter rewriter.rewrite end
write!()
click to toggle source
# File lib/elsmore/document.rb, line 26 def write! writer = Elsmore::Writer.new(self) writer.emitter = emitter writer.write end