Tuesday, 25 July 2017

WunderGround API: 

wu_data.rb

# encoding: UTF-8

require "json"
require "open-uri"
require_relative 'wu'
require_relative 'forecast_io'

class WuData
  URL_API = "http://54.68.32.124"
  def initialize
    places = open(URL_API+"/sync_places").read
    @places = JSON.parse places
  end

  def get_wu
    @wu_data = {}
    @places.each do |place|
      query_start_time = DateTime.now
      _coords = "#{place["location"][0]}"+","+"#{place["location"][1]}"
      puts "#{_coords}===================="
      wu = Wu.new(_coords)
      wu_obj = wu.report
      @wu_data[place["id"]] = wu_obj
      sleep 1
      puts "  -> #{((DateTime.now - query_start_time) * 24 * 60 * 60).to_f}s"
    end
  end

  def wu_json
    File.open("wu_json/wu_data.json","w") do |f|
      f.write(@wu_data.to_json)
    end
  end
end

wu = WuData.new
wu.get_wu
wu.wu_json


sync_data.rb


No comments:

Post a Comment