use strict;
my $addr;
while ($addr=<STDIN>)
{
chomp($addr);
last if ($addr eq "");
my $page=webpage_get($addr);
if ($page) { print $page; } else { print "FAILED\n"; }
}
use IO::Socket;
my ($url)=@_;
($url =~ m/^http:\/\/([\w\-\.]+)(:(\d+))?(\/.*)$/) or return(undef);
my $host=$1;
my $page=$4;
my $port=$3; defined($port) or ($port=80);
my $socket = IO::Socket::INET->new( PeerAddr => $host, PeerPort => $port, Proto => "tcp", Type => SOCK_STREAM )
or return(undef);
print $socket "GET ${page} HTTP/1.0\nHost: $host\n\n";
my $line;
$line=<$socket>;
unless ($line =~ m/^HTTP.*\s+200\s+/)
{
close ($socket); return(undef);
}
while ($line=<$socket>) { last if ($line =~ m/^\r?\n?$/m); }
my $content="";
while ($line=<$socket>) { $content=$content.$line; }
close ($socket);
return($content);
}