use LWP::UserAgent; use HTTP::Request::Common; use HTTP::Cookies; my $user_name = $ARGV[0]; my $user_pass = $ARGV[1]; print "Name=$user_name, pass=$user_pass\n"; do { `if exist alwayson.log del alwayson.log`; open(LOG, ">alwayson.log"); $ua = LWP::UserAgent->new; $ua->cookie_jar(HTTP::Cookies->new(file => "alwayson.cookies", autosave => 1)); my ($response, $url) = clickon("", ''); ($response, $url) = clickon($response->content, 'content="\d+;url=([^"]+)'); ($response, $url) = clickon($response->content, 'location.href="([^"]+)"'); ($response, $url) = clickon($response->content, 'frame name="login" src="([^"]+)"'); $response->content =~ /name="id" value="([^"]+)"/m; my $id_tag = $1; my $url = "http://www.friendscout.de/cgi-bin/pu_help2.fcgi?id=$id_tag&page=loginp&nickname=$user_name&password=$user_pass"; $response = $ua->request(GET $url); printf LOG qq(\n\nurl: $url\n\n%s\n\n), $response->content; ($response, $url) = clickon($response->content, 'parent.main.location.replace\("([^"]+)"'); my $url = "http://www.friendscout.de/cgi-bin/pu_help.fcgi?page=nav2&id=$id_tag"; # <-- where does nav2 comes from? $response = $ua->request(GET $url); printf LOG qq(\n\nurl: $url\n\n%s\n\n), $response->content; print "LOGGED ON!\n"; print "Sleeping...\n"; close(LOG); sleep 5; undef $ua; } while ( 1 ); sub clickon { my $content = shift @_; my $filter = shift @_; print "content=$content\nfilter=$filter\n"; if ($content =~ /$filter/m) { print "*********MATCH($1)*******\n"; my $url = "http://www.friendscout.de$1"; my $response = $ua->request(GET $url); if($response->is_success) { print "success!\n"; } else { printf "failure! %s\n", $response->message; } printf LOG qq(\n\nurl: $url\n\n%s\n\n), $response->content; return ($response, $url); } else { die "redirect not found !"; } }