Всем привет, есть такой погодный код :)
#!/usr/bin/env perl
use HTTP::Tiny;
my $response = new HTTP::Tiny->get('http://informer.gismeteo.ru/xml/33745_1.xml');
die "☼ $response->{status}: $response->{reason}\n" unless $response->{success};
die "Cisco" if $response->{content} =~ /xxx.xxx.xxx.xxx:8080/;
# температура $1 $2
$response->{content} =~ /<HEAT min="(.*)" max="(.*)"\/>/;
my $temperature = "$1..$2";
# ветер $1 $2 $3
$response->{content} =~ /<WIND min="(.*)" max="(.*)" direction="(.*)"\/>/;
my $speed = eval "($1+$2)/2"; # скорость
my $direct = qw(С С-В В Ю-В Ю Ю-З З С-З)[$3]; # направление
# давление $1 $2
$response->{content} =~ /<PRESSURE max="(.*)" min="(.*)"\/>/;
my $pressure = eval "($1+$2)/2";
# вывод на экран
print "☼ $temperature °C; $speed м/c $direct; $pressure мм";
При запуске получаю ☼ 404: Not Found. А в браузере захожу по этому адресу и всё ок, xml файл на месте. Что делать, братцы? До недавнего времени скрипт работал.
UPD:
http_proxy=http://ip:port/ wget -O- http://informer.gismeteo.ru/xml/33745_1.xml