in reply to
Measure temperature outside in Perl
What room?
weather? Weather::Google? Yahoo::Weather? WWW::Wunderground::API?
#!/usr/bin/perl --
use strict; use warnings;
use Path::Class;
use DateTime;
use LWP::Simple qw' $ua getstore ';
our $here = file(__FILE__)->absolute->dir;
chdir $here;
$ua->show_progress(1);
my $now = DateTime->now( qw[ time_zone local ] )->strftime('%F-%H-%M-%
+S%z');
my $file = "$now-LA.rss";
my $url = 'https://www.wunderground.com/auto/rss_full/CA/Los_Angeles.x
+ml?units=english';
for(1..3){
getstore( $url, $file );
last if -e $file and -s _;
}
print "#~ $file ";
use XML::XPath;
use XML::XPath::XMLParser;
my $xp = XML::XPath->new(filename => $file);
print $xp->findvalue('//item[1]/title');
print " $1 " if $xp->findvalue('//item[1]/description') =~ /(Humidity[
+^\|]+)/;
print "\n";
__END__
** GET https://www.wunderground.com/auto/rss_full/CA/Los_Angeles.xml?u
+nits=english ==> 500 Can't connect to www.wunderground.com:443 (Bad h
+ostname) (2s)
** GET https://www.wunderground.com/auto/rss_full/CA/Los_Angeles.xml?u
+nits=english ==> 200 OK
#~ 2012-02-04-01-53-41-0800-LA.rss Current Conditions : 61.5F, Clear
+ - 1:47 AM PST Feb. 4 Humidity: 27%