class BarchartData::Scraper
Public Instance Methods
extract_symbols_from_page(page)
click to toggle source
# File lib/barchart_scripts/scraper.rb, line 4 def extract_symbols_from_page page array = page.search('.ds_symbol').map { |e| e.text() } array.map! { |elem| elem.split } end
insert_data(arr, sym)
click to toggle source
# File lib/barchart_scripts/scraper.rb, line 16 def insert_data arr, sym case sym when :AllTimeHigh arr.each do |s| AllTimeHigh.create(symbol: s, saved_on: Time.current) end when :AllTimeLow arr.each do |s| AllTimeLow.create(symbol: s, saved_on: Time.current) end when :NewHigh arr.each do |s| NewHigh.create(symbol: s, saved_on: Time.current) end when :NewLow arr.each do |s| NewLow.create(symbol: s, saved_on: Time.current) end end end
validate_data_integrity(dirty_array)
click to toggle source
# File lib/barchart_scripts/scraper.rb, line 9 def validate_data_integrity dirty_array dirty_array.reduce([]) { |cleaned_array, i| cleaned_array << i if i.to_s == i.to_s.upcase cleaned_array } end