Sha256: b4dc98d2139751261cec3cfa8dde0fb55776a4a8608a30644f68014665b8a6be

Contents?: true

Size: 691 Bytes

Versions: 76

Compression:

Stored size: 691 Bytes

Contents

# frozen_string_literal: true

require 'aranha/parsers/html/base'

module Aranha
  module Parsers
    module Html
      class ItemList < Base
        def data
          items_data
        end

        def item_data(item)
          item
        end

        def items_data
          count = 0
          @data ||= nokogiri.xpath(items_xpath).map do |m|
            count += 1
            item_data(node_parser.parse(m))
          end
        rescue StandardError => e
          raise StandardError, "#{e.message} (Count: #{count})"
        end

        def items_xpath
          raise "Class #{self.class} has no method \"#{__method__}\". Implement it"
        end
      end
    end
  end
end

Version data entries

76 entries across 76 versions & 2 rubygems

Version Path
eac_tools-0.62.1 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.62.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.61.1 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.61.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.60.3 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.60.2 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.60.1 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
aranha-parsers-0.17.1 lib/aranha/parsers/html/item_list.rb
eac_tools-0.60.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.59.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.58.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.57.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.56.1 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.56.0 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.55.7 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.55.6 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.55.5 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
eac_tools-0.55.4 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb
aranha-parsers-0.17.0 lib/aranha/parsers/html/item_list.rb
eac_tools-0.55.3 sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb