2012-03-13 52 views
0

我有一個從網頁抓取信息的問題,這是由某人解決,但我也想從該結構中獲取數據並將其放入正常的字符串變量,我評論說這個,並被告知創建一個新的問題,所以在這裏!Web ::查詢和數據抽取

代碼:

use Web::Query 'wq'; 
my $football_matches = wq($mech->content) 
    ->find('tr.match') 
    ->map(sub { 
     my (undef, $e) = @_; 
     return 'v' eq $e->find('td.score')->text 
      ? [ 
       $e->attr('id'), 
       map { $e->find("td.$_")->text } 
        (qw(tournament dateTime homeTeam score awayTeam prices)) 
      ] 
      :(); 
    }); 
use Data::Dumper; print Dumper $football_matches; 

輸出:

$VAR1 = [ 
    ['tn7gc635476', '', ' Mo 12Mar 2012 ', 'Arsenal', 'v', 'Newcastle', ' '], 
    ['tn7gc649937', '', ' Tu 13Mar 2012 ', 'Liverpool', 'v', 'Everton', ' '], 
    ['tn7gc635681', '', ' Sa 17Mar 2012 ', 'Fulham', 'v', 'Swansea', ' '], 
    ['tn7gc635661', '', ' Sa 17Mar 2012 ', 'Wigan',  'v', 'West Brom', ' '], 
    ['tn7gc635749', '', ' Su 18Mar 2012 ', 'Wolves', 'v', 'Man Utd', ' '], 
    ['tn7gc635556', '', ' Su 18Mar 2012 ', 'Newcastle', 'v', 'Norwich', ' '] 
]; 

我想要做的是採取每個日期,主隊和客隊並投入正常變量/數組。

在此先感謝!

回答

0

您可能想檢查perldscperlref。查找部件陣列和陣列參數

+1

對於perlref爲+1,對於perldsc爲-1。我強烈地感到dsc是一個柺杖,如果你真的瞭解perlref(和[perlreftut](http://p3rl.org/reftut),我強烈建議),那麼你不需要遵循dsc中的食譜。 – 2012-03-14 02:41:22

+0

我對Perl很新,是$ football_matches數組的數組嗎?如前所述,這個答案給了我,我不是100%理解它,因爲我最初試圖使用HTML :: TokeParser來做到這一點。 – blacky 2012-03-14 20:26:25