use strict;
use warnings;
use utf8;
use 5.010;
use HTML::HTML5::Parser;
open (FILE, '<links.txt') ;
my @lines = <FILE>;
my $i;
my $a = $lines[$i];
my $xml = HTML::HTML5::Parser->load_html(location => $a) ;
收到错误: “无法在C:/ Dwimperl / perl / site / lib /上的未定义值上调用方法”setValue“ HTML / HTML5 / Parser / TagSoupParser.pm第2946行“
我尝试先插入if和define值但它不起作用。
我刚刚开始学习Perl,这里的任何人都可以帮助我吗?
答案 0 :(得分:0)
use strict;
use warnings;
use utf8;
use 5.010;
use HTML::HTML5::Parser;
use Try::Tiny;
open (my $FILE, '<', 'links.txt') ;
my @lines = <$FILE>;
my $i = 0;
foreach my $a (@lines) {
my $xml = try {
HTML::HTML5::Parser->load_html(location => $a)
} catch {
warn "Bad line [$i][$a]";
warn "Actual error: $_";
};
$i++;
}
我已经清理了你的代码,我最好猜测它是如何实际构建的,并添加了一个try / catch块(使用Try::Tiny
)来演示识别问题行的方法。 / p>
在真正诊断问题之前,您需要确定导致问题的输入。