neoldschool has asked for the wisdom of the Perl Monks concerning the following question:

Hi ! I want to login into a site proteced with a captcha image. It's ok for me to enter manually the captcha (e.g. submit the form with WWW::Mechanize sumbit method) BUT the captcha is generated from a PHP script : <img src"gencap.php"></img> if I do a $mech->mirror('gencap.php', 'cap.jpg'); I can download the image, but mirror apparenly change the location as the current page is blank after calling mirror. I can call the WWW::Mechanize::back function, but then the image is regenerated... I also tried to use clone and a second instance of a WWW::Mechanize variable, but it mess with the first instance. How can I download this image from the PHP script wihout messing with the current page ?
  • Comment on WWW::Mechanize : how to download witout changing location ?

Replies are listed 'Best First'.
Re: WWW::Mechanize : how to download witout changing location ?
by arkturuz (Curate) on Jul 24, 2013 at 20:47 UTC
    My first guess is that your website sends a unique cookie along with HTML form to be submitted. So, you should probably initialize WWW::Mechanize with a corensponding cookie jar. Also, show us some code, it's more than welcome here and it can be a better way of solving your problem.

      So, you should probably initialize WWW::Mechanize with a corensponding cookie jar.

      Mechanize comes with a cookie jar

        That's right. I thought it should be separately initialized to be used.
Re: WWW::Mechanize : how to download witout changing location ?
by Anonymous Monk on Jul 25, 2013 at 03:22 UTC

    I can call the WWW::Mechanize::back function, but then the image is regenerated...

    No it isn't