HTTP::Thin::UserAgent - A Thin UserAgent around some useful modules.
version 0.016
use HTTP::Thin::UserAgent; my $favorites = http(GET 'http://api.metacpan.org/v0/author/PERIGRIN?join=favorite')->as_json->decoded_content; my $results = http(GET 'http://www.imdb.com/find?q=Kevin+Bacon')->scraper( scraper { process '.findResult', 'results[]' => scraper { process '.result_text', text => 'TEXT'; process '.result_text > a', link => '@href'; } } );
HTTP::Thin::UserAgent provides a layer over HTTP::Thin. It exposes an functional API that hopefully makes writing HTTP clients easier.
HTTP::Thin::UserAgent
A function that returns a new HTTP::Thin::UserAgent::Client object, which does the actual work for the request. You pas in an HTTP::Request object.
HTTP::Thin::UserAgent::Client
Exports from HTTP::Request::Common to make generating HTTP::Request objects easier.
Exports from Web::Scraper to assist in building scrapers for HTML documents.
HTTP::Thin::UserAgent::Client has the following methods.
Returns the HTTP::Response object returned by HTTP::Thin
This sets the request up to use application/json and then adds a decoder to decode the HTTP::Response content. If data is passed in it will be encoded into JSON and supplied in as the request data.
application/json
Sets up the request to process the response through the Web::Scraper object supplied. It will return the data (if any) returned by the scraper object.
Returns the decoded content, currently we only support HTML (in which case we return scraped content) and JSON (in which case we decode the JSON using JSON::Any).
Returns a HTML::TreeBuilder::XPath object.
Takes a CSS or XPath expression and returns an arrayref of HTML::TreeBuilder::XPath nodes.
A code reference that if there is an error in fetching the HTTP response handles that error. $_ will be set to the error being handled. Exceptions are HTTP::Throwable objects for server side errors.
$_
When set to true the TRACE variable will cause HTTP::Thin::UserAgent::Client to emit dumps of the request and response objects as it processes them. This is to help you in debugging the HTTP requests.
TRACE
Chris Prather <chris@prather.org>
This software is copyright (c) 2013 by Chris Prather.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install HTTP::Thin::UserAgent, copy and paste the appropriate command in to your terminal.
cpanm
cpanm HTTP::Thin::UserAgent
CPAN shell
perl -MCPAN -e shell install HTTP::Thin::UserAgent
For more information on module installation, please visit the detailed CPAN module installation guide.