Sha256: 01f696dec79758418f90d1931fb98b57d71cb8b76775aa41fff423f1877f632c
Contents?: true
Size: 853 Bytes
Versions: 5
Compression:
Stored size: 853 Bytes
Contents
class StockIndex class BaseScraper require 'nokogiri' def parse_rows(rows) rows.inject([]) do |array, tr| symbol = symbol(tr) market = market(tr) if symbol && market component = StockIndex::Component.new(symbol, market, wikipedia_link(tr)) array << component.attributes end array end end def td(tr, position) tr.css('td')[position] end def wikipedia_position(tr, position) wikipedia_td = tr.css('td')[position] wikipedia_path = wikipedia_td ? wikipedia_td.css('a').first.attributes['href'].value : nil build_wikipedia_link(wikipedia_path) end def build_wikipedia_link(wikipedia_path) URI::Generic.new('https', nil, 'en.wikipedia.org', nil, nil, wikipedia_path, nil, nil, nil).to_s rescue nil end end end
Version data entries
5 entries across 5 versions & 1 rubygems