#!/usr/bin/perl $DEBUG = 0; # 1:常時出力 0:雨のときのみ出力 # URLは厚木 open(IN, "http_proxy='http://プロキシーサーバ名' wget -O - -o /dev/null 'http://weather.yahoo.co.jp/weather/jp/14/4620/14212.html'|"); @line = ; foreach $l ( @line ) { $l =~ s/\<.*?\>//g; $l =~ s/^\<.*//g; $l =~ s/.*\>$//g; push @line2, $l if !($l =~ m/^$/); } while ($l = (shift @line2)) { if ( $l =~ m/ピンポイント天気/ ) { $koukai = shift @line2; } elsif ( $l =~ m/今日の天気/ ) { $today = shift @line2; $jikan = shift @line2; # 時間」読み捨て $jikan = " " . (shift @line2) . " "; $jikan .= " " . (shift @line2) . " "; $jikan .= " " . (shift @line2) . " "; $jikan .= " " . (shift @line2) . " "; $jikan .= (shift @line2) . " "; $jikan .= (shift @line2) . " "; $jikan .= (shift @line2) . " "; $jikan .= (shift @line2); $tenki = (shift @line2); # 天気」読み捨て $tenki = (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2); $kion = (shift @line2); # 気温」読み捨て $kion = (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2); $shitsudo = shift @line2; # 湿度」読み捨て $shitsudo = (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= shift @line2; $kousuiryou = shift @line2; # 降水」読み捨て $kousuiryou = (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= shift @line2; $kazamuki = shift @line2; # 風向き」読み捨て $kazamuki = (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2); Seikei(); $message .= "$jikan\n"; $message .= "$tenki\n"; $message .= "\n"; } elsif ( $l =~ m/明日の天気/ ) { $today = shift @line2; $jikan = shift @line2; # 時間」読み捨て $jikan = " " . (shift @line2) . " "; $jikan .= " " . (shift @line2) . " "; $jikan .= " " . (shift @line2) . " "; $jikan .= " " . (shift @line2) . " "; $jikan .= (shift @line2) . " "; $jikan .= (shift @line2) . " "; $jikan .= (shift @line2) . " "; $jikan .= (shift @line2); $tenki = (shift @line2); # 天気」読み捨て $tenki = (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2) . " "; $tenki .= (shift @line2); $kion = (shift @line2); # 気温」読み捨て $kion = (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2) . " "; $kion .= (shift @line2); $shitsudo = shift @line2; # 湿度」読み捨て $shitsudo = (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= (shift @line2) . " "; $shitsudo .= shift @line2; $kousuiryou = shift @line2; # 降水」読み捨て $kousuiryou = (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= (shift @line2) . " "; $kousuiryou .= shift @line2; $kazamuki = shift @line2; # 風向き」読み捨て $kazamuki = (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2) . " "; $kazamuki .= (shift @line2) . (shift @line2); Seikei(); $message .= "$jikan\n"; $message .= "$tenki\n"; } elsif ( $l =~ m/^週間天気/ ) { shift(@line2); shift(@line2); $hiduke1 = shift (@line2); $hiduke2 = shift (@line2); $hiduke3 = shift (@line2); $hiduke4 = shift (@line2); $hiduke5 = shift (@line2); $hiduke6 = shift (@line2); chomp($hiduke1); chomp($hiduke2); chomp($hiduke3); chomp($hiduke4); chomp($hiduke5); chomp($hiduke6); shift(@line2); $hiduke1 .= shift (@line2); $hiduke2 .= shift (@line2); $hiduke3 .= shift (@line2); $hiduke4 .= shift (@line2); $hiduke5 .= shift (@line2); $hiduke6 .= shift (@line2); if ( $message2 eq "" ) { $message2 = "$hiduke1$hiduke2$hiduke3$hiduke4$hiduke5$hiduke6"; } #print $message2; #. "$hiduke2" . "$hiduke3" . "$hiduke4". "$hiduke5" . "$hiduke6"; } } if ($DEBUG == 1 || ( $message =~ m/弱/ || $message =~ m/強/ || $message =~ m/雪/ )) { #open(MAIL, "| cat - "); open(MAIL, "|nkf -j | /usr/sbin/sendmail -t"); print MAIL << "End"; To: 送り先メールアドレス From: 送り元メールアドレス Subject: 天気予報 $message $message2 . End close(MAIL); } sub Seikei { $jikan =~ s/\n//g; $jikan =~ s/時//g; $tenki =~ s/\n//g; $tenki =~ s/晴れ/晴/g; $tenki =~ s/曇り/曇/g; $tenki =~ s/弱雨/弱/g; $tenki =~ s/強雨/強/g; $shitsudo =~ s/\n//g; $shitsudo =~ s/---/--/g; $kousuiryou =~ s/\n//g; $kousuiryou =~ s/ 0/ 0/g; $kousuiryou =~ s/^0/ 0/g; $kazamuki =~ s/\n//g; }