module TickerSymbolJpn

Constants

FIRST_LINE
FIRST_URL
JASDAQ_URL
MOTHERS_URL
SECOND_URL
SHEET_NAME
VERSION

Public Instance Methods

all_codes() click to toggle source
# File lib/ticker_symbol_jpn.rb, line 28
def all_codes
  urls = FIRST_URL + SECOND_URL + MOTHERS_URL + JASDAQ_URL
  get_codes urls
end
first_codes() click to toggle source
# File lib/ticker_symbol_jpn.rb, line 33
def first_codes
  get_codes FIRST_URL
end
jasdaq_codes() click to toggle source
# File lib/ticker_symbol_jpn.rb, line 45
def jasdaq_codes
  get_codes JASDAQ_URL
end
load_codes(json_file_path) click to toggle source
# File lib/ticker_symbol_jpn.rb, line 56
def load_codes json_file_path
  json_data = open(json_file_path) do |io|
    JSON.load(io)
  end
  json_data.keys.each do |key|
    json_data[(Integer(key) rescue key) || key] = json_data.delete(key)
  end
  json_data
end
mothers_codes() click to toggle source
# File lib/ticker_symbol_jpn.rb, line 41
def mothers_codes
  get_codes MOTHERS_URL
end
save_codes(json_file_path) click to toggle source
# File lib/ticker_symbol_jpn.rb, line 49
def save_codes json_file_path
  codes = all_codes
  open(json_file_path, 'w') do |io|
    JSON.dump(codes, io)
  end
end
second_codes() click to toggle source
# File lib/ticker_symbol_jpn.rb, line 37
def second_codes
  get_codes SECOND_URL
end

Private Instance Methods

get_codes(urls) click to toggle source
# File lib/ticker_symbol_jpn.rb, line 67
def get_codes urls
  codes = {}

  urls.each do |url|
    book = Spreadsheet.open(open(url)).worksheet(SHEET_NAME)
    book.each do |line|
      next if line[1] == FIRST_LINE
      codes[line[1].to_i] = line[2]
    end
  end
  codes
end