HTML::Selector::XPath;
配合HTML::TreeBuilder::XPath;很强大 用CSS选择器的语法获取内容   和Jquery类似的语法  非常方便
 比如

div#footer a   id是footer的div 下的所有连接

在 2010年7月30日 下午6:03,cnhack TNT <[email protected]>写道:

> 网页信息抽取,用 Web::Scraper 会方便得多
>
> http://perlchina.org/advent/2009/WebScraper.html
>
>
> 2010/7/30 Qiang (James) <[email protected]>
>
>  xuanshi wrote:
>> > Hi all
>> >
>> >
>> > 1,我在做 正则表达时, 我用了如下的语句: if ($KnowEn[$i] =~ /\$Instance/)
>> >                                       {
>> >                                               print $KnowEn[$i] ."\n";
>> >                                       }
>> > 系统总是对这个报错。我想知道,是什么原因呢 ? 我现在猜测是:$KnowEn[$i]与循环有关,出了问题,环不下去,还有原文件里有空白的行。
>> >
>>
>> 报什么错?最重要的错误信息请不要省略。
>>
>> >
>> >
>> >
>> > 2, 另外,我想从一个网页里,把我需要的信息抓取下来,要从哪里入手呢?比如这个网站:
>> > http://www2.chkd.cnki.net/kns50/Dict/dict_list.aspx?firstLetter=B#
>> > 有如下信息,有些是重要的,有些不重要。
>>
>> 你需要先抓网页(通过 LWP 或 WWW::Mechanize 即可),然后根据内容的分布来匹
>> 配(你可以通过正则匹配或是 CPAN 上的一些模块)。
>>
>> 这是 LWP 的一个教程 http://wiki.perlchina.org/LWP与WEB的基本使用
>>
>> 鉴于你要抓取的内容是在一个 html table 里,你可以使用
>> CPAN(search.cpan.org) 上众多的解析 table 的模块,例如 HTML::TableExtract
>> 和 HTML::TableParser。
>>
>> Qiang (James)
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
>> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。
>> 要取消订阅此网上论坛,请发送电子邮件至 
>> [email protected]<perlchina%[email protected]>
>> 。
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>
>>
>   --
> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。
> 要取消订阅此网上论坛,请发送电子邮件至 
> [email protected]<perlchina%[email protected]>
> 。
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>



-- 
Azure.Wang

-- 
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 [email protected]。
要取消订阅此网上论坛,请发送电子邮件至 [email protected]。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

回复