#!/strawberry/perl/bin/perl use strict; use warnings; use HTTP::Cookies; use WWW::Mechanize; use LWP::Debug qw(+); require "C:\\Documents and Settings\\me\\Desktop\\subs.pl"; if (my err = read_cfg("C:\\Documents and Settings\\me\\Desktop\ \file.cfg")) { print(STDERR $err, "\n"); exit(1); } my $mech = WWW::Mechanize->new(); $mech->agent_alias('Windows IE 6'); $mech->cookie_jar(HTTP::Cookies->new(autosave => 1)); $mech->add_header('UID' => $CFG::cfg{'USERNAME'}, 'cn' => $CFG::cfg{'CN'}); # FIRST PART: GO TO INDEX WHICH WILL REDIRECT YOU TO LOGIN AS YOU HAVEN'T YET my $response = $mech->get($CFG::cfg{'URL'}); die 'Error at ' , $CFG::cfg{'URL'}, "\n" $response->status_line, "\n Aborting" unless $response->is_success; print "\n\nSUCCESS data type: ", $response->content_type, "\n\n"; # SECOND PART: LOGIN FROM LOGIN PAGE WITH USERNAME AND PASSWORD PROVIDED $mech->submit_form( form_number => 1, fields => { USER => $CFG::cfg{'USERNAME'}, PASSWORD => $CFG::cfg{'PASSWORD'} } ); # WILL SUBMIT TO /registration/login_2 TO BUNDLE USERNAME/PASSWORD TO SEND TO SITEMINDER AGENT # THIRD PART: GO TO /registration/login_2 TO HANDLE LOGIN REQUEST WITH FORM ENTRIES my $content = $mech->content; my $urlHeader = $CFG::cfg{'URL_HEADER'}; $content =!~ s[(href=['"]?)(/main)][$1$urlHeader$2]isg; $mech->update_html($content); $mech->submit(); # WILL SUBMIT TO SITEMINDER AGENT AND RETURN VERIFIED $content = $mech->content;