Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^3: Mechanize, Forms, Links, problem from Javascript?

by Cody Pendant (Prior)
on Jun 22, 2008 at 06:24 UTC ( [id://693340]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Mechanize, Forms, Links, problem from Javascript?
in thread Mechanize, Forms, Links, problem from Javascript?

Well, the output there says that there was a POST request to http://sipp.pu.go.id/sipp2005/form_A3.php with the content
ses_id=sid&fiscal=2008&thnang=&propinsi=01&proyektemp=0905497004-11003 +7040+-Ir.+Bambang+Erianto%2CMM++++++++&nmpinpro=-Ir.+Bambang+Erianto% +2CMM++++++++&nippin=110037040&nmproyek=PUSAT-SEKRETARIAT-SNVT+PENANGA +NAN+MENDESAK+DAN+TANGGAP+DARURAT&proyek=0905497004&nmpropinsi=DKI+Jak +arta

Which might be the same, assuming the server accepts GET requests as well as POST requests, as this URL:

http://sipp.pu.go.id/sipp2005/form_A3.php?ses_id=sid&fiscal=2008&thnan +g=&propinsi=01&proyektemp=0905497004-110037040+-Ir.+Bambang+Erianto%2 +CMM++++++++&nmpinpro=-Ir.+Bambang+Erianto%2CMM++++++++&nippin=1100370 +40&nmproyek=PUSAT-SEKRETARIAT-SNVT+PENANGANAN+MENDESAK+DAN+TANGGAP+DA +RURAT&proyek=0905497004&nmpropinsi=DKI+Jakarta

Now, I've gone to that URL and ... I can't read Bahasa Indonesia, so I don't know if that's the information you want or an error message.



Nobody says perl looks like line-noise any more
kids today don't know what line-noise IS ...

Replies are listed 'Best First'.
Re^4: Mechanize, Forms, Links, problem from Javascript?
by goodepic (Initiate) on Jun 24, 2008 at 22:47 UTC

    Just for anyone googling a similar problem, I got this working. In the end it was just a simple post from mechanize. With the same $br = WWW::Mechanize->new() object, I went to the login page logged in, followed the link to the trouble page, manually went to the URL you're directed to through the first two option drop downs, then to get the behavior of the combo selecting from the 3rd option drop down and then clicking on one of the data table links, I did this:

    $br->post('http://sipp.pu.go.id/sipp2005/form_A3.php', ['ses_id' => 'sid', 'fiscal' => "$year", 'thnang' => '', 'propinsi' => "$prop", 'proyektemp' => satker->{'proyektemp'}, 'nmpinpro' => $satker->{'nminpro'}, 'nipppin' => $satker->{'nippin'}, + 'nmproyek' => $satker->{'nmproyek'}, 'proyek' => $satker->{'proyek'}, + 'nmpropinsi' => $state_names{$prop}]); + my $resp = $br->content();

    All the values in the POST come from the names and values in the 3rd drop down option select input. Easy to figure out how to parse those to get the values in the HTTP above. I got those like this:

    $form = $br->form_name('sipp'); my $input = $form->find_input('proyektemp'); my @pt_values = $input->possible_values; my @pt_names = $input->value_names;

    Read on cpan HTML::Form for more on that...

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://693340]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2024-03-28 18:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found