抓捕腾讯音乐MV前100页的点击量
[root@dou ~]# cat lwp.pl
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
use Encode;
my $num;
my $total;
my @nums = (0..99);
my @firstnums = (0..9) x 10;
my $firstnum = 0;
my $html_result;
my $file = "tmp1";
my $filetmp = "tmpfile";
my $ua = LWP::UserAgent->new;
$ua->timeout(3);
foreach my $nums (@nums) {
??????? my $url = "http://v.qq.com/mvlist/$firstnums[$firstnum]/22_-1_-1_-1_-1_1_$nums_0_28.html"; ??????? my $response = $ua->get($url); ??????? if ($response->is_success) { ??????????????? $html_result = encode_utf8($response->decoded_content); ??????????????? open(my $fh,'>',"$file") or die "can't create file $file:$!n"; ??????????????? print $fh $html_result; ??????????????? close $fh; ??????????????? open(my $in,'<',"$file") or die "can't open file $file: $!n"; ??????????????? while(<$in>) { ??????????????????????? next unless /_total_view/; ??????????????????????? /.*"_total_view">(d+)</span>.*/; ??????????????????????? $num = $1; ??????????????????????? open(my $tmpfile,'>>',"$filetmp")or die "can't create file $filetmp:$!n"; ??????????????????????? print $tmpfile "$numn"; ??????????????????????? $total += $num; ??????????????????? } ??????? $firstnum += 1; ??????? close $in; ??????? } else { ??????????????? print "sorry,request failed at [ $firstnum ] -> [ $nums ]n";; ??????? } } print "$totaln";