sub _extract_links { my $self = shift; my $doc = $self->{agent}->Document; my @links; for ( my $i = 0; $i < $doc->all->length; $i++ ) { my $obj = $doc->all( $i ); next unless $obj->tagName =~ /^(?:IFRAME|FRAME|AREA|A)$/i; next if lc $obj->tagName eq 'a' && !$obj->href; push @links, __new_link( $doc->all( $i ) ); } $self->{links} = \@links; return wantarray ? @{ $self->{links} } : $self->{links}; }