HTML::Perser 简单实例

原因:今天想做一个网站数据的摘取脚本,需要对html文件进行解析。这个功能原本是通过正则表达式来实现的,今天想使用perl模块方式已实现更好的可读性,也利于修改再使用。

CPAN上HTML解析的模块有很多,HTML::TreeBuilder,HTML::TreeBuilder::XPath, HTML::TableExtractHTML网上很多介绍。我今天就简单的介绍一下HTML:: Perser模块,

我也是研究阶段,不求讲的有多深刻,只希望对大家理解这个模块的使用上有帮助。当然举例一定能用。

先看实例:

#! /usr/local/bin/perl
use LWP::Simple;
use Data::Dumper;
use HTML::Parser;

my $content = <&lt;EOHTML;
&lt;A HREF="index.html">This is 1 link</A>
<A HREF="index.html">This is 2 link</A>
<A HREF="index.html">This is 3 link</A>
<A HREF="index.html">This is 4 link</A>
<A HREF="index.html">This is 5 link</A>
EOHTML

my $parser = HTML::Parser-&gt;new(
        api_version =&gt; 3,
        start_h =&gt;[\&start,"tagname,attr"],
        text_h =&gt;[\&text,"text"],
);

$parser-&gt;parse($content);
$parser-&gt;eof;

sub start{
        my($tag,$attr) = @_;
};
sub text{
        my($text) = @_;

        print $text;
};

你可能感兴趣的:(html,职场,表达式,休闲)