class SalaryScraper::BasketballReference
Class Pulls and Manipulates data from basketball-reference.com
Constants
- ALL_TEAMS
- HEAD
- PAYROLL
- WEBSITE
Public Instance Methods
assign_key_to_value(number_arrays, players_data_array, head_array)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 57 def assign_key_to_value(number_arrays, players_data_array, head_array) data = [] number_arrays.times do piece_of_data = Hash.new head_array.each do |x| piece_of_data[x] = players_data_array.first players_data_array.shift end data << piece_of_data end data end
check_if_team_exist(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 79 def check_if_team_exist(team) if ALL_TEAMS.include?(team) return true else return false end end
get_column_heads(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 32 def get_column_heads(team) doc = get_page(team) doc.xpath(HEAD) end
get_page(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 21 def get_page(team) url = "#{WEBSITE}/#{team}.html" Nokogiri::HTML(open(url)) end
get_team(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 16 def get_team(team) doc = get_page(team) doc.xpath(PAYROLL) end
head_array(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 37 def head_array(team) @head_array = [] head = get_column_heads(team) head.each { |x| @head_array << x.text } @head_array end
just_text(data)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 26 def just_text(data) textes_array = [] data.each { |t| textes_array << t.text } textes_array end
number_arrays()
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 70 def number_arrays @players_data_array.size / @head_array.size end
players_data_array(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 44 def players_data_array(team) @players_data_array = [] players_data = get_team(team) players_data.each { |x| @players_data_array << x.text } @players_data_array end
to_array_of_hashes(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 51 def to_array_of_hashes(team) players_array = players_data_array(team) header_array = head_array(team) assign_key_to_value(number_arrays, players_array, header_array) end
to_yaml(team)
click to toggle source
# File lib/nbasalaryscrape/salaryscrape.rb, line 74 def to_yaml(team) data = to_array_of_hashes(team) data.to_yaml end