我正在使用 HTML-TreeBuilder-XPath 解析html内容
在Perl。我有我需要的数据的xpath位置。我面临的问题是,xpath $html->findnodes()
有几个匹配,由单个结果返回,但我需要逐个打印。需要一些建议。谢谢。
答案 0 :(得分:3)
您可以使用
进行迭代 for my $node (@$paraelements) { ..... }
更完整的例子
use HTML::TreeBuilder::XPath;
my $tree= HTML::TreeBuilder::XPath->new;
$tree->parse_file( "mypage.html");
my $paraelements= $tree->findnodes( '//p') ;
for my $node (@$paraelements) {
say $node->as_HTML() ;
}
答案 1 :(得分:0)
它返回对列表的引用(ARRAYREF)。要获取列表,请在变量前加一个@,告诉Perl将其视为列表的[位置/内存地址],就像JIT的示例代码一样