我正在使用 HTML-TreeBuilder-XPath 解析 html 内容在 Perl 中。我已经得到了我需要的数据的 XPath 位置。我面临的问题是,xpath $html->findnodes()
有几个匹配项是由单个结果返回的,但是我需要一一打印。需要一些建议。谢谢。
您可以使用
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() ;
}
它返回对列表(ARRAYREF)的引用。要取回列表,请在变量前放置一个 @,告诉 Perl 将其视为列表的 [位置/内存地址],就像 JIT 的示例代码一样。