Class: AppReviews::TStore::ReviewPage

Inherits:
Object
  • Object
show all
Defined in:
lib/app-reviews/t_store/review_page.rb

Instance Method Summary collapse

Constructor Details

#initialize(content, page) ⇒ ReviewPage

Returns a new instance of ReviewPage.



7
8
9
10
11
12
# File 'lib/app-reviews/t_store/review_page.rb', line 7

def initialize(content, page)
  content = content.gsub(/<textarea[^<]+<\/textarea>/, '')
  content = content.gsub('gif""', 'gif"')
  xml = Document.new(content)
  @table = xml.root.elements['body'].elements[2, 'form'].elements[2, 'div'].elements['table']
end

Instance Method Details

#itemsObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/app-reviews/t_store/review_page.rb', line 14

def items
  @table.elements.each do |item|
    begin
      td = item.elements['td']
      next unless td
      date = td.elements['p'].elements['span'].text.strip
      name = td.elements['p'].elements[2, 'strong'].text.strip
      text = td.elements[2, 'p'].elements['span'].elements['div'].text.gsub('&nbsp;', ' ').strip
      review = {
        text: text,
        name: name,
        date: date,
      }
      break unless yield review
    rescue Exception => e
      print_error e, item
    end
  end
end