Skip to content

Instantly share code, notes, and snippets.

@latsku
Created August 14, 2015 14:14
Show Gist options
  • Save latsku/4d248e92d64885bd2c1b to your computer and use it in GitHub Desktop.
Save latsku/4d248e92d64885bd2c1b to your computer and use it in GitHub Desktop.
Get weather from Openweathermap
require "rubygems"
require "json"
require "net/http"
require "uri"
location = ARGV.join("%20")
location = "Helsinki,Finland" if location.nil? || location.empty?
uri = URI.parse("http://api.openweathermap.org/data/2.5/weather?q=" + location)
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Get.new(uri.request_uri)
response = http.request(request)
if response.code == "200"
result = JSON.parse(response.body)
name = result["name"]
temperature = result["main"]["temp"] - 273.15
temperature_max = result["main"]["temp_max"]
temperature_min = result["main"]["temp_min"]
pressure = result["main"]["pressure"]
humidity = result["main"]["humidity"]
else
puts "ERROR!!!"
end
print("Weather at ", name, ":\n")
print("Temperature \t", temperature, " °C\n")
print("Pressure \t", pressure, " hPa\n")
print("Humidity \t", humidity, " %\n")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment