美国accuweather天气网站对中国普通城市也有天气预报,据说还比较准确。
现在需要在它的天气网页上把天气文字部分解析出来,今天写了一个Perl程序来实现,下面的例子是北京市最近一周的天气。
#!/usr/bin/perl
use Encode;
use LWP::Simple;
use utf8;
binmode(STDIN, ':encoding(utf8)');
binmode(STDOUT, ':encoding(utf8)');
binmode(STDERR, ':encoding(utf8)');
my $html=get("http://www.accuweather.com/zh-cn/cn/beijing/beijing/forecast.aspx") or exit;
my @temp = split (" @temp = split (" shift (@temp); foreach $t (@temp) foreach $i (0..6) print "\n";
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21129783/viewspace-712877/
,如需转载,请注明出处,否则将追究法律责任。
my $data = $temp[2].$temp[3];
my $t;
my $i=0;
{
if ($t=~/(.*?)<\/span>/) { $date[$i] = $2; }
if ($t=~/(.*?)<\/span>/) { $desc[$i] = $2; }
if ($t=~/(.*?)<\/span>/) { $label[$i] = $2; }
if ($t=~/(.*?)°/) { $j=$2." C"; $high[$i++] = $j; }
}
{
$j = $i + 7;
print "\n$ date[$i] $desc[$i] $high[$i] $date[$j] $desc[$j] $high[$j]";
}