我已经解决了这个问题:原来我使用 WWW::Mechanize 加载的页面使用 AJAX 加载其中的所有内容,<tbody>
因此在我创建 $html 变量时不会加载它。现在我必须看看如何获得这个动态内容......
我正在尝试解析网页中表格的内容。<table>
包含 a<thead>
和<tbody>
a 。当我从<tbody>
表格的一部分中获取内容时,我发现它都不存在。我只得到里面的内容<thead>
。
我尝试了几种不同的方法,如下所示,所有这些方法都没有从<tbody>
.
使用 HTML::TreeBuilder
my $tb = HTML::TreeBuilder->new();
$tb->parse($html);
my $table = $tb->look_down( _tag => 'tbody', id => 'tbody-id' );
使用 HTML::TableExtract
my $te = HTML::TableExtract->new( attribs => { id => 'table-id' } );
$te->parse($html);
my $table=$te->first_table_found;
当我尝试执行print Dumper($table);
表中的一个时,我表明我正在找到<table>
并且只能看到<thead>
or内部的表内容<tbody>
以及对它的父级的引用,其中包含来自<thead>
.
我可以不太关心<thead>
我只需要表格内容中的内容<tbody>
。
我不确定我做错了什么以及从这里去哪里。