#!/usr/bin/perl --
use strict;
use warnings;
use HTML::TreeBuilder::XPath;
my $month;
my $date;
my $value;
my $tree= HTML::TreeBuilder::XPath->new_from_content(<<'HTML');
<body>
<div class="Row Jun-2015">
<div class="Cell month-year ">
Jun-2015
</div>
<div class="Cell Release Date ">
2015-07-30
</div>
<div class="Cell National Mortgage Contract Rate ">
3.850
</div>
</div>
<div class="Row Jul-2015">
<div class="Cell month-year ">
Jun-2015 </div>
<div class="Cell Release Date ">
2015-08-31 </div>
<div class="Cell National Mortgage Contract Rate ">
3.750 </div>
</div>
</body>
HTML
my @rows = $tree->findnodes(q{//div[@class =~ /Row Jun-2015/ ]});
print $#rows, "\n";
for my $row ( @rows ){
my @cells = $row->findnodes(q{ //div[ @class =~ /Cell/ ] });
print $#cells, "\n";
$date=$cells[1]->as_trimmed_text;
$value=$cells[2]->as_trimmed_text;
for my $cell ( @cells ){
print $cell->as_trimmed_text, "\t";
}
print "Date: $date, value : $value\n";
}
output be like
0
5
Jun-2015 2015-07-30 3.850 Jun-2015 2015-08-31 3.750
+ Date: 2015-07-30, value : 3.850
But the expected output is :
1
3
Jun-2015 2015-07-30 3.850
Date: 2015-07-30, value : 3.850
3
Jun-2015 2015-08-31 3.750
Date: 2015-08-31, value : 3.750
there is something wrong with this code please give a suggestion to find out issue.
|