NAME
TaskPipe::UserAgentManager - base class for managing requests in TaskPipe
DESCRIPTION
You can use this class with TaskPipe::Task_Scrape by specifying it as the useragent manager to use in your project config. The useragent handler module specified in the ua_handler_module
setting in your config should provide the useragent handler TaskPipe::UserAgentManager will use. E.g.:
TaskPipe::Task_Scrape::Settings:
ua_mgr_module: TaskPipe::UserAgentManager
ua_handler_module: TaskPipe::UserAgentManager::UserAgentHandler
# ...
If you want to modify the way TaskPipe makes requests you can inherit from TaskPipe::UserAgentManager and create your own UserAgentManager. The format for your custom useragent manager might be as follows:
package TaskPipe::UserAgentManager_MyUAManager;
use Moose;
sub init{
my ($self) = @_;
# do something on initialisation
}
sub before_request($self,method,@params){
# method = 'get', 'post', ...
# params = whatever params were passed when
# the request was made (url etc)
#
# Do something directly before the request happens
}
sub after_request($self,$resp,$method,@params){
# resp = the HTTP::Response object
#
# Do something directly after the request happens
}
__PACKAGE__->meta->make_immutable;
1;
SEE ALSO
If you are thinking of inheriting from TaskPipe::UserAgentManager, see the modules included in TaskPipe
already for exmples of how to do this:
TaskPipe::UserAgentManager_ProxyNet TaskPipe::UserAgentManager_ProxyNet_TOR TaskPipe::UserAgentManager_ProxyNet_Open
See TaskPipe::UserAgentManager::UserAgentHandler for more information about handlers.
AUTHOR
Tom Gracey <tomgracey@gmail.com>
COPYRIGHT AND LICENSE
Copyright (c) Tom Gracey 2018
TaskPipe is free software, licensed under
The GNU Public License Version 3