for my $row ($table->rows) { say join "\t", map $_ // q(), @$row; } #### #! /usr/bin/perl use warnings; use strict; use feature qw{ say }; use Syntax::Construct qw{ // }; use open ':std', OUT => ':utf8'; use WWW::Mechanize::GZip; use HTML::TableExtract qw(tree); my $site = 'http://www.fourmilab.ch/yoursky/cities.html'; my $mech = 'WWW::Mechanize::GZip'->new; $mech->get($site); $mech->follow_link( text => 'Portland OR' ); my $te = 'HTML::TableExtract'->new; $te->parse($mech->content); my $table = ($te->tables)[3]; my $table_tree = $table->tree; my $table_text = $table_tree->as_text; say "table text is $table_text"; my $venus = $table_tree->cell(4,1)->as_text; say "say venus is $venus"; my $jupiter = $table_tree->cell(7,1)->as_text; say "say jupiter is $jupiter"; my $lub = 2457204.63659; #least upper bound my $glb = 2457207.63659; #greatest lower bound __END__ #### $ perl tree4.pl table text is  RightAscensionDeclinationDistance(AU)From 45°31'5"N 122°40'33"W:AltitudeAzimuthSun5h 45m 15s+23° 23.5'1.0161.776122.364UpMercury4h 19m 31s+17° 16.1'0.711−14.916135.207SetVenus8h 57m 45s+19° 5.3'0.61730.89886.249UpMoon7h 6m 7s+17° 35.0'61.4 ER10.488104.477UpMars5h 40m 59s+24° 0.7'2.5731.626123.509UpJupiter9h 27m 56s+15° 51.6'5.92533.91177.612UpSaturn15h 52m 22s−18° 0.9'9.06617.428−38.534UpUranus1h 14m 31s+7° 12.0'20.373−37.278−179.032SetNeptune22h 46m 36s−8° 36.9'29.655−40.890−126.794SetPluto19h 1m 59s−20° 38.6'31.925−11.937−72.601Set say venus is 8h 57m 45s say jupiter is 9h 27m 56s #### Julian day: >