Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^6: Seeking assistance with WWW::Mechanize Form Submission

by tspang (Initiate)
on Jan 17, 2013 at 16:37 UTC ( #1013814=note: print w/ replies, xml ) Need Help??


in reply to Re^5: Seeking assistance with WWW::Mechanize Form Submission
in thread Seeking assistance with WWW::Mechanize Form Submission

using these 3 variations:

$data=$mech->submit_form( form_name => 'HashForm1', fields => { login_password => 'password', login_username => 'username', prefLanguage => 00000000, submit => 'Log On', } );
and this
$mech->submit_form( form_name => 'HashForm1', fields => { login_password => 'password', login_username => 'username', prefLanguage => 00000000, }, button => "submit", );
and this
$mech->form_name('HashForm1'); $mech->field("login_username",'username'); $mech->field("login_password",'password'); $mech->field("prefLanguage",00000000); $mech->submit_form();

all yield the same 500 error. Trying to record the tranactions using httprecorder with the follwing line yields a 403

$mech->proxy(['https'], 'http://localhost:8080');

but it does yield this in the log:

$agent->get('https://192.168.0.2'); $agent->get('https://192.168.0.2/home.htm'); $agent->get('https://192.168.0.2/logon.htm');

I have tried all of the different combinations of submitting the post data as well, even though that seemed like the least likely way to resolve the problem. Is it possible something in the headers isn't being set that would prevent log in? This seems like such a simple task and yet its turning out to be quite difficult.


Comment on Re^6: Seeking assistance with WWW::Mechanize Form Submission
Select or Download Code
Re^7: Seeking assistance with WWW::Mechanize Form Submission
by Gangabass (Priest) on Jan 22, 2013 at 02:55 UTC

    Try to set User-Agent (at the beginning of your code):

    $mech->agent_alias("Windows IE 6");
Re^7: Seeking assistance with WWW::Mechanize Form Submission
by Anonymous Monk on Jan 22, 2013 at 03:30 UTC

    This seems like such a simple task and yet its turning out to be quite difficult.

    It is because you're not being linear, because you're not speaking the right language

    If it works from your browser, it works because of the headers/requests it sends, so if you want it to work from LWP, send the exact same requests, in the exact same order, using the exact same headers

    If for whatever reason the website decides it doesn't like your requests, you didn't dot an I or cross a T, well, you'll have to figure it out, there is no secret, no magic, websites can be fantastically stupid in what they accept and what they reject, so if you have found a way that works, be as identical as possible

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (4)
As of 2014-08-02 01:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Who would be the most fun to work for?















    Results (53 votes), past polls