我需要从网页中检索一些数据。在分析了页面的HTML代码之后,我发现我需要的数据嵌入到具有唯一表id的表中。我不知道它是否是一个HTML规则,无论如何它对解析我认为非常好。
表中的数据排列如下(为了给你一个明确的“数据结构”,省略了各种属性和标签)
<table .... id = "tablename" .... >
<tr>
<td .... >filed1</td>
....
<td .... >filedn</td>
</tr>
#several "trs" here
<tr>
<td .... >filed1</td>
....
<td .... >filedn</td>
</tr>
</table>
所以我的问题是如何在这种情况下使用Perl的HTML解析器实用程序来满足我的需求。
提前致谢。
答案 0 :(得分:12)
HTML::TableExtract听起来与您正在寻找的完全一样。
答案 1 :(得分:2)
使用HTML::Table。
答案 2 :(得分:-1)
在 The Perl Journal 中查看Ken MacFarlane的Parsing HTML with HTML::Parser。我不确定这是你所指的解析器,但看起来它可以做你想要的,或者至少指出你正确的方向。
答案 3 :(得分:-4)
您可以尝试这样的事情:
my $html = '<html code....';
$html =~ s/^.*(<table id="tablename">.*<\/table>).*/$1/s;