http://www.perlmonks.org?node_id=1042983


in reply to Establish a session to call URL with Perl

I expect that the OP does mean, “logging in.”   A generalized solution to this problem should consider that any site can “log you off” unexpectedly for any reason ... which is one of the reasons why Anonymous Monk has so many postings here.   You’ll need to determine how your target-site captures the logged-in status:   it could be a cookie, it could be a GET-parameter on the URL, or it could be both.   You need to learn how it tells you that you are “not logged in,” as well as “incorrect login” or “I’m just having a bad hair day today.”

Probably the easiest way to do this .. anyway, the most common way I’ve seen it done .. is to write a class that specifies use base WWW::Mechanize;.   (WWW::Mechanize, in turn, is based on LWP::UserAgent, so you have quite a large number of methods to work with.   Write a public subroutine for sending a request to the site and interpreting, particularly, its error results.   This subroutine should either be aware of whether you are logged-in or not, or be able to transparently handle the business of getting logged-in before issuing the request.   It will be very specific to the particular site being talked-to, and it will insulate the rest of the code from any “niggling details.”

Replies are listed 'Best First'.
Re^2: Establish a session to call URL with Perl
by Anonymous Monk on Jul 12, 2013 at 08:38 UTC

    ..which is one of the reasons why Anonymous Monk has so many postings here.

    Except that it isn't