- 论坛徽章:
- 0
|
- #!/usr/bin/perl
- use 5.010;
- use LWP::Simple;
- my $content = get('http://utils.america.gov/feed2js/feed2js.php?src=http%3A%2F%2Fwww.beijingaqifeed.com%2FBeijingAQI%2FBeijingAir.xml&desc=1&num=10&targ=y&utf=y&pc=y&html=y&words=40&');
- my @data = $content =~ m{title="(.*?)\s*?//.*?"}mg;
- my %air = ();
- for (@data) {
- next if /no data/;
- my ($date, $time, $t, $pm, $aqi, $status) = split /;/, $_;
- push @{$air{$date}}, [$time, $pm, $aqi, $status];
- }
- say '======================================';
- for my $date (keys %air) {
- say ' Date: ' . $date;
- say '--------------------------------------';
- say ' Time PM AQI Status';
- say '--------------------------------------';
- for my $data (@{$air{$date}}) {
- printf "%5s %-3.1f %3.0f %15s\n", @{$data};
- }
- say '======================================';
- }
复制代码 运行结果- ---------- Perl Run ----------
- ======================================
- Date: 12-07-2011
- --------------------------------------
- Time PM AQI Status
- --------------------------------------
- 21:00 11.0 36 Good
- 20:00 12.0 39 Good
- 19:00 13.0 42 Good
- 18:00 16.0 52 Moderate
- 17:00 15.0 49 Good
- 16:00 18.0 57 Moderate
- 15:00 17.0 55 Moderate
- 14:00 18.0 57 Moderate
- 13:00 17.0 55 Moderate
- 12:00 28.0 82 Moderate
- 11:00 27.0 79 Moderate
- 10:00 146.0 197 Unhealthy
- 09:00 202.0 252 Very Unhealthy
- 08:00 218.0 268 Very Unhealthy
- ======================================
- Date: 12-06-2011
- --------------------------------------
- Time PM AQI Status
- --------------------------------------
- 15:00 201.0 251 Very Unhealthy
- 14:00 215.0 265 Very Unhealthy
- 13:00 215.0 265 Very Unhealthy
- 12:00 209.0 259 Very Unhealthy
- 11:00 211.0 261 Very Unhealthy
- 10:00 210.0 260 Very Unhealthy
- 09:00 181.0 231 Very Unhealthy
- 08:00 211.0 261 Very Unhealthy
- 07:00 231.0 281 Very Unhealthy
- 06:00 225.0 275 Very Unhealthy
- 05:00 229.0 279 Very Unhealthy
- 04:00 237.0 287 Very Unhealthy
- 03:00 247.0 297 Very Unhealthy
- 02:00 247.0 297 Very Unhealthy
- 01:00 252.0 302 Hazardous
- ======================================
- Output completed (4 sec consumed) - Normal Termination
复制代码 |
|