use strict; use warnings; use LWP::Simple; use WWW::Mechanize; #Access to the root page my $agent; $agent = WWW::Mechanize->new(); my $rootpage = "http://bogc.dnrc.mt.gov/WebApps/DataMiner/Wells/WellCompletions.aspx"; #Get the root page $agent->get($rootpage); #Get Form data $agent->form_name('aspnetForm'); my $eventtarget = $agent->field('__EVENTTARGET'); my $eventarg = $agent->field('__EVENTARGUMENT'); my $lastfocus = $agent->field('__LASTFOCUS'); my $viewstate = $agent->field('__VIEWSTATE'); my $viewstategen = $agent->field('__VIEWSTATEGENERATOR'); my $eventValidation = $agent->field('__EVENTVALIDATION'); #Construct fields my $fields = { 'ctl00$ScriptManager1' => 'ctl00$SiteContentPlaceHolder$FormFilterNoNav1$UpdatePanelFormFilterNoNav|ctl00$SiteContentPlaceHolder$FormFilterNoNav1$btnSearch', '__EVENTTARGET' => $eventtarget, '__EVENTARGUMENT' => $eventarg, '__LASTFOCUS' => $lastfocus, '__VIEWSTATE' => $viewstate, '__VIEWSTATEGENERATOR' => $viewstategen, '__EVENTVALIDATION' => $eventValidation, 'ctl00$SiteContentPlaceHolder$FormFilterNoNav1$cboFilterOption' => 'Dt_Effect|date', 'ctl00$SiteContentPlaceHolder$FormFilterNoNav1$cboFilterType' => '<', 'ctl00$SiteContentPlaceHolder$FormFilterNoNav1$txtFilter' => '09/06/2016', 'ctl00$SiteContentPlaceHolder$FormFilterNoNav1$txtFilterString' => '', 'ctl00$SiteContentPlaceHolder$FormFilterNoNav1$btnSearch' => 'Search' }; #Submit request to get data. $result = $agent->submit_form( form_name => 'aspnetForm', fields => $fields, ); $agent->save_content("C:/" . "Completions.html");