HTML テーブル内からデータを復元するのに苦労しています。これが私が持っているものです。
use strict;
use warnings;
use HTML::TreeBuilder;
use HTML::TableExtract qw(tree); #
use WWW::Mechanize;
my $d = 3;
my $c = 4;
$te = HTML::TableExtract->new( depth => $d, count => $c ); # , decode => 1, gridmap => 1
$te->parse($mech->content);
print "\nDepth = $d, Count = $c \n\n";
my $table = $te->first_table_found;
my $table_tree = $table->tree();
my @rows = $table->rows();
print "The row count is : ".$rowcount,"\n";
print "The column count is: ".$colcount,"\n";
foreach my $row (@rows)
{
my @read_row = $table->tree->row($row);
foreach my $read (@read_row)
{
print $read, "\n";
}
}
これをエラーメッセージとして取得します。
"Rows(ARRAY(0x2987ef8)) out of range at test4.pl line 91."
テーブルを調べて値を取得するより良い方法はありますか。探すヘッダーがなく、 HTML::Queryを見ましたが、それが見つからなかったか、PPM とHTML::Elementを介して必要なBadger::Baseがテーブルの構築に使用されているように見えます。スクリプトの前半でWWW::Mechanizeも使用しています。
上記のコードに関するヘルプをいただければ幸いです。