Encapsulate a response received from an a9 opensearch compatible engine
use WWW::OpenSearch;
my $url = "http://bulkfeeds.net/opensearch.xml";
my $engine = WWW::OpenSearch->new($url);
# Retrieve page 4 of search results for "iPod"
my $response = $engine->search("iPod",{ startPage => 4 });
for my $item (@{$response->feed->items}) {
print $item->{description};
}
# Retrieve page 3 of results
$response = $response->previous_page;
# Retrieve page 5 of results
$response = $response->next_page;
WWW::OpenSearch::Response is a module designed to encapsulate a response received from an A9 OpenSearch compatible engine. See http://opensearch.a9.com/spec/1.1/response/ for details.
Constructs a new instance of WWW::OpenSearch::Response from the WWWW::OpenSearch:Response returned by the search request.
Parses the content of the \s-1HTTP\s0 response using XML::Feed. If successful, parse_feed( ) is also called.
Parses the XML::Feed originally parsed from the \s-1HTTP\s0 response content. Sets the pager object appropriately.
Performs another search on the parent object, returning a WWW::OpenSearch::Response instance containing the previous/next page of results. If the current response includes a <link rel=\*(L"previous/next\*(R" href=\*(L"...\*(R" /> tag, the page will simply be the parsed content of the \s-1URL\s0 specified by the tag's href attribute. However, if the current response does not include the appropriate link, a new query is constructed using the startPage or startIndex query arguments. Gets the href attribute of the first link whose rel attribute is equal to $type.
Tatsuhiko Miyagawa <[email protected]>
Brian Cassidy <[email protected]>
Copyright 2005-2013 by Tatsuhiko Miyagawa and Brian Cassidy
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.