WWW::Agent::Zombie - Walking through websites like a zombie
use WWW::Agent::Zombie; my $z = new WWW::Agent::Zombie (); $z->run (q{... # some WeeZL here });
This package provides a way to let zombies stalk the earth. Seriously, a plan (written in WeeZL, a simple text language, see WWW::Agent::Plugins::Director) controls a WWW::Agent object.
The constructor expects a hash with the following key/value pairs:
functions
In a WeeZL script you can refer to functions which you can provide here. The keys are the names of the functions as the can appear in the WeeZL script, as values you have to pass in subroutine references.
When such a subroutine is invoked, it will get the current context as parameter. See WWW::Agent::Plugins::Director for details.
Example:
my $zombie = new WWW::Agent::Zombie (functions => { 'test' => sub { warn "here I am"; } 'test2' => sub { warn "and again"; }, });
time_dither
In WeeZL scripts you can ask the agent to pause for a time interval. If you specify there ~ 4 secs (wait for approximately 5 seconds), then the time dither factor controls, what approximately means.
~ 4 secs
In case of 20%, the actual waiting time will randomly range from 4 to 6 seconds.
20%
The default is 10%.
10%
run
This method expects a string with a script written in WeeZL. If that is missing, the default
die "no plan to run"
will be used. Once this executes, obviously we return with an exception.
The method will not return until the WeeZL script has terminated. Any infinite loop there will be exactly that. If the WeeZL script contains execptions, these will be caught and re-raised into your application.
$zombie->run (q{ goto http://www.example.org/ wait ~ 15 secs goto http://www.example.org/login.php });
Robert Barta, <rho@bigpond.net.au>
Copyright (C) 2005 by Robert Barta
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.
To install WWW::Agent, copy and paste the appropriate command in to your terminal.
cpanm
cpanm WWW::Agent
CPAN shell
perl -MCPAN -e shell install WWW::Agent
For more information on module installation, please visit the detailed CPAN module installation guide.