perl檢測網(wǎng)站首頁狀態(tài)代碼,隨便寫的,一起交流
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
use Net::SMTP;
use POSIX qw/strftime/;
print <<EOF;
+--------------------------------------+
+----made by Henry He on 2011/03/03----+
+--------------------------------------+
EOF
my @array = ();
my $count = 0;
open FILE,'<','url.txt' or die "$! ";
while (<FILE>) {
chomp;
/(\S+)/;
push @array,$1;
}
close FILE;
foreach my $url (@array) {
$count++;
my $obj = LWP::UserAgent->new(
keep_alive=>1,
timeout=>60);
my $req = HTTP::Request->new(GET=>"$url");
my $res = $obj->request($req);
if ($res->is_success) {
print $url,"\t",$res->status_line," ";
} else {
print "$url\tFailed:\t",$res->status_line," ";
sendemail("$url\tFailed:\t" . $res->status_line," ");
}
}
my $cur_time = strftime "%Y-%m-%d",localtime;
print " ";
print <<EOF;
+-------------------------------------+
+ Finished check $count urls +
+-------------------------------------+
EOF
printlog("finished check $count urls at $cur_time... ");
sub sendemail {
my $content = shift;
#change it for your smtp server
my $host = 'smtp.163.com';
#your email account here
my $mail_from = 'your_email_account';
#change it what you want to send here
my $mail_to = 'abc@abc.com';
#email subject
my $subject = 'Error Notice';
my $smtp = Net::SMTP->new($host,
Hello=>'localhost',
Timeout=>120,
Debug=>1
);
# modify it with your email username and password
$smtp->auth('your_email_username','your_email_password');
$smtp->mail($mail_from);
$smtp->to($mail_to);
$smtp->data();
$smtp->datasend("To: $mail_to ");
$smtp->datasend("From: $mail_from ");
$smtp->datasend("Subject: $subject ");
$smtp->datasend(" ");
$smtp->datasend("$content ");
$smtp->dataend();
$smtp->quit;
}
sub printlog {
my $str = shift;
open LOG,'>>','check_url_status.log' or die "$! ";
print LOG "$str";
close LOG;
}
億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
聯(lián)系:億恩小凡
QQ:89317007
電話:0371-63322206 本文出自:億恩科技【www.riomediacenter.com】
服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|