File Coverage

lib/App/ExtractLinks.pm
Criterion Covered Total %
statement 10 22 45.4
branch 0 4 0.0
condition 0 3 0.0
subroutine 4 6 66.6
pod 0 2 0.0
total 14 37 37.8


line stmt bran cond sub pod time code
1             package App::ExtractLinks;
2              
3             # ABSTRACT: extract href's in HTML docs to stdout
4              
5 2     2   40623 use strict;
  2         6  
  2         62  
6 2     2   12 use warnings;
  2         5  
  2         75  
7              
8 2     2   1327 use HTML::Parser;
  2         15457  
  2         164  
9              
10             our $VERSION;
11              
12             BEGIN {
13 2     2   397 $VERSION = '0.0.3';
14             }
15              
16             my $parser = HTML::Parser->new(api_version => 3);
17              
18             sub handler {
19 0     0 0   my ($attr) = @_;
20              
21 0           foreach my $key (keys %{$attr}) {
  0            
22 0           my $val = ${$attr}{$key};
  0            
23              
24 0 0 0       if ($key eq 'href' || $key eq 'src') {
25 0           chomp $val;
26 0 0         $val ne '' && print "$val\n";
27             }
28             }
29             }
30              
31             sub run {
32 0     0 0   $parser->handler(start => \&handler, 'attr');
33              
34 0           while (<>) {
35 0           $parser->parse($_);
36             }
37              
38 0           $parser->eof;
39             }
40              
41             1;
42              
43             =head1 NAME
44              
45             ExtractLinks
46              
47             =head1 DESCRIPTION
48              
49             Extract hrefs from HTML documents to stdout.
50