use WWW::Mechanize qw(); use IO::Socket::SSL qw(); use HTML::TreeBuilder; use 5.10.0; use strict; use warnings; my $mech = WWW::Mechanize->new(ssl_opts => { SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE, verify_hostname => 0, }); my $url = "scheduleurl"; $mech->get($url); my $filename = 'out.htm'; my $result = $mech->submit_form( form_number => 2, fields => { "ctl00\$ContentPlaceHolder1\$TermDDL" => 2171, "ctl00\$ContentPlaceHolder1\$ClassSubject" => 'CS', } ,button => "ctl00\$ContentPlaceHolder1\$SearchButton" ); $mech->submit(); #print $result->content(); open(my $fhandle, '>', $filename) or die "Could not open file '$filename' $!"; my $tree = HTML::TreeBuilder->new_from_content($result->content); if (my $div = $tree->look_down(_tag => "div", id => "class_list")){ #print $div->as_text(), "\n"; # say $fhandle $div->as_HTML(),"\n"; my @list = $div->find(_tag => 'ol'); #print Dumper \@list; foreach (@list) { say $fhandle $_->as_HTML(); } } close $fhandle; $tree->delete();