0

我正在尝试getElementsByClassName在 Javascript 中执行 perl 中的操作,但它不起作用,从下面的代码中我得到的只是 END,它没有进入 foreach 循环,我做错了什么,并且在那里比 HTML::TagParser 更好的方法?

...
my $html = HTML::TagParser->new( "****.html" );
$topic = URI::Fetch->fetch($topic);

my @list = $html->getElementsByClassName( 'separateur_links' );
foreach my $elem ( @list ) {
    my $text = $elem->innerText;
    print $text . "\n";
}
print "END\n";
...

编辑 :

当我使用时Data::Dumper print Dumper($html);,我得到:$VAR1 = bless( {}, 'HTML::TagParser' );

编辑 2:

$topic = URI::Fetch->fetch($topic); 不在最初的问题中,我忽略了它不知道这是问题所在

4

1 回答 1

2

问题在于URI::Fetch->fetch我将它用于其他测试并忘记将其删除:

my $topic = "*******.html";
print "** Checking available links in : " . $topic . "\n";
# $topic = URI::Fetch->fetch($topic);

my $html = HTML::TagParser->new( $topic );
print Dumper($html);
my @list = $html->getElementsByClassName( 'separateur_links' );
foreach my $elem ( @list ) {
    my $text = $elem->innerText;
    print $text . "\n";
}
于 2013-09-23T15:28:20.557 回答