Sponsored Content
Full Discussion: Java Wunderground
Top Forums Programming Java Wunderground Post 302931966 by totoro125 on Saturday 17th of January 2015 09:09:43 AM
Old 01-17-2015
Java Wunderground

I am not sure if anyone here has experience in this, but I am working with web services and Json.

I am trying to obtain my current geographic information (city and state) by using the Weather Underground (Weather Forecast & Reports - Long Range & Local | Wunderground | Weather Underground) API (API | Weather Underground). I want to use the geolookup feature (API | Weather Underground) to print out zipcode, city, and state.

I started it, but I am not really sure where to go from here. How should I use the geolookup function? I already created a key.

Code:
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;

import com.google.gson.JsonElement;
// Requires gson jars
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

public class Wunderground {         
	/**
	 * @param args
	 * @throws Exception 
	 */
	public static void main(String[] args) throws Exception {
		// Get from http://www.wunderground.com/weather/api/
		String key;
		if(args.length < 1) {
			System.out.println("Enter key: ");
			
			Scanner in = new Scanner(System.in);
			key = in.nextLine();
		} else {
			key = args[0];
		}
		
		String sURL = "http://api.wunderground.com/api/" + key + "/conditions/forecast/q/19104.json";
		
		// Connect to the URL
		URL url = new URL(sURL);
		HttpURLConnection request = (HttpURLConnection) url.openConnection();
		request.connect();
		
		// Convert to a JSON object to print data
    	JsonParser jp = new JsonParser();
    	JsonElement root = jp.parse(new InputStreamReader((InputStream) request.getContent()));
    	JsonObject rootobj = root.getAsJsonObject(); // may be Json Array if it's an array, or other type if a primitive
    	
    	// Get some data elements and print them
    	double temp_f = rootobj.get("current_observation").getAsJsonObject().get("temp_f").getAsDouble();
		System.out.println(temp_f);
		
		String todayforecast = rootobj.get("forecast").getAsJsonObject().get("txt_forecast").getAsJsonObject().get("forecastday").getAsJsonArray().get(0).getAsJsonObject().get("fcttext").getAsString();
		System.out.println(todayforecast);
	}

}

 
Weather::Com::Moon(3pm) 				User Contributed Perl Documentation				   Weather::Com::Moon(3pm)

NAME
Weather::Com::Moon - class containing moon phase information SYNOPSIS
#!/usr/bin/perl -w use Weather::Com::Finder; # you have to fill in your ids from weather.com here my $PartnerId = 'somepartnerid'; my $LicenseKey = 'mylicense'; my %weatherargs = ( 'partner_id' => $PartnerId, 'license' => $LicenseKey, 'language' => 'de', ); my $weather_finder = Weather::Com::Finder->new(%weatherargs); my @locations = $weather_finder->find('Heidelberg'); my $currconditions = $locations[0]->current_conditions(); print "The moon phase is currently ", $currconditions->moon()->description(), " "; DESCRIPTION
Via Weather::Com::Moon one can access the current moon phase. This class will not be updated automatically with each call to one of its methods. You need to call the "moon()" method of the parent object again to update your object. CONSTRUCTOR
You usually would not construct an object of this class yourself. This is implicitely done when you call the "moon()" method of one cur- rent conditions or forecast object. METHODS
description([$language]) Returns a textual description of the current moon phase. This description is translated if you specified the language option for you Weather::Com::Finder. This attribute is dynamic language enabled. icon() Returns the number of the icon describing the current moon phase. AUTHOR
Thomas Schnuecker, <thomas@schnuecker.de> COPYRIGHT AND LICENSE
Copyright (C) 2004-2007 by Thomas Schnuecker This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The data provided by weather.com and made accessible by this OO interface can be used for free under special terms. Please have a look at the application programming guide of weather.com (<http://www.weather.com/services/xmloap.html>)! perl v5.8.8 2007-07-09 Weather::Com::Moon(3pm)
All times are GMT -4. The time now is 07:37 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy