Module: WorldPostalCodes::Import

Defined in:
lib/world_postal_codes/import.rb

Class Method Summary collapse

Class Method Details

.run!Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/world_postal_codes/import.rb', line 11

def run!
  postal_codes = []
  Zip::File.open(open(WorldPostalCodes::ZIP_URL).path) do |zip|
    file = zip.glob('*.CSV').first
    CSV.parse(file.get_input_stream.read, encoding: "UTF-8") do |row|
      postal_codes << convert(row)
    end
  end
  write(postal_codes.to_h)
end