Finder class to search for weather.com location's
#!/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, );
my $finder = Weather::Com::Finder->new(%weatherargs);
# if you want an array of locations: my @locations = $finder->find('Heidelberg');
# or if you prefer an arrayref: my $locations = $finder->find('Heidelberg');
foreach my $location (@locations) { print "Found weather for city: ", $location->name(), "\n"; print "Current Conditions are ", $location->current_conditions()->description(), "\n"; }
The usual way to use the Weather::Com module would be to instantiate a Weather::Com::Finder that allows you to search for a location by providing a search string or postal code or any other search string that weather.com understands.
The finder returns an arrayref or an array of locations (depending on how you call the \*(C`find()\*(C' method). Each location is an object of Weather::Com::Location.
\$1
The constructor takes a configuration hash or hashref as described in the Weather::Com \s-1POD\s0. Please refer to that documentation for further details.
Once you've instantiated a finder object, you can perform \*(C`find()\*(C' calls to search for locations in the weather.com database.
The \*(C`find()\*(C' method returns an array of Weather::Com::Location objects if you call it in list context, else an arrayref.
Returns undef if no matching location could be found.
See also documentation of Weather::Com and Weather::Com::Location.
Thomas Schnuecker, <[email protected]>
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 \s-1OO\s0 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)