File Coverage

lib/WWW/Mixi/Scraper/Plugin/ViewMessage.pm
Criterion Covered Total %
statement 9 24 37.5
branch n/a
condition n/a
subroutine 3 5 60.0
pod 1 1 100.0
total 13 30 43.3


line stmt bran cond sub pod time code
1             package WWW::Mixi::Scraper::Plugin::ViewMessage;
2            
3 1     1   642 use strict;
  1         2  
  1         24  
4 1     1   4 use warnings;
  1         1  
  1         18  
5 1     1   4 use WWW::Mixi::Scraper::Plugin;
  1         1  
  1         5  
6            
7             validator {qw(
8             id is_anything
9             box is_anything
10             )};
11            
12             sub scrape {
13 0     0 1   my ($self, $html) = @_;
14            
15 0           my %scraper;
16             $scraper{message} = scraper {
17 0     0     process 'div#messageDetail>div.thumb>a',
18             'link' => '@href';
19 0           process 'div#messageDetail>div.thumb>a>img',
20             'image' => '@src',
21             'name' => '@alt';
22 0           process 'div#messageDetail>div.messageDetailHead>h3',
23             'subject' => 'TEXT';
24 0           process 'div#messageDetail>div.messageDetailHead>dl>dd',
25             'heads[]' => 'TEXT';
26 0           process 'div#message_body',
27             'description' => $self->html_or_text;
28 0           result qw( subject name link image description heads );
29 0           };
30            
31 0           my $stash = $scraper{message}->scrape(\$html);
32 0           my $time = $stash->{heads}->[0];
33 0           $time =~ s/^.*(\d{4})\D+(\d{2})\D+(\d{2})\D+(\d{2})\D+(\d{2}).*$/$1\-$2\-$3 $4:$5/;
34            
35 0           $stash->{time} = $time;
36 0           delete $stash->{heads};
37            
38 0           return $self->post_process( $stash )->[0];
39             }
40            
41             1;
42            
43             __END__