The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Google - simple OOP-ish interface to the Google SOAP API

SYNOPSIS

 use Net::Google;
 use constant LOCAL_GOOGLE_KEY => "********************************";

 my $google = Net::Google->new(key=>LOCAL_GOOGLE_KEY);
 my $search = $google->search();

 # Search interface

 $search->query(qw(aaron straup cope));
 $search->lr(qw(en fr));
 $search->ie("utf8");
 $search->oe("utf8");
 $search->starts_at(5);
 $search->max_results(15);

 map { print $_->title()."\n"; } @{$search->results()};

 # or...

 foreach my $r (@{$search->response()}) {
   print "Search time :".$r->searchTime()."\n";

   # returns an array ref of Result objects
   # the same as the $search->results() method
   map { print $_->URL()."\n"; } @{$r->resultElements()};
 }

 # Spelling interface

 print $google->spelling(phrase=>"muntreal qwebec")->suggest(),"\n";

 # Cache interface

 my $cache = $google->cache(url=>"http://search.cpan.org/recent");
 print $cache->get();

DESCRIPTION

Provides a simple OOP-ish interface to the Google SOAP API

Google methods

$google = Net::Google->new(%args)

Valid arguments are :

  • key

    String.

  • debug

    Boolean

$google->search(%args)

Valid arguments are :

  • key

    String. Google API key. If none is provided then the key passed to the parent Net::Google object will be used.

  • starts_at

    Int. First result number to display. Default is 0.

  • max_results

    Int. Number of results to return. Default is 10.

  • lr

    String or array reference. Language restrictions.

  • ie

    String or array reference. Input encoding.

  • oe

    String or array reference. Output encoding.

  • safe

    Boolean.

  • filter

    Boolean.

Returns a Net::Google::Search object. Returns undef if there was an error.

$pkg->spelling(%args)

  • key

    String. Google API key. If none is provided then the key passed to the parent Net::Google object will be used.

  • phrase

    String or array reference.

  • debug

    Int.If none is provided then the debug argument passed to the parent Net::Google object will be used.

Returns a Net::Google::Spelling object. Returns undef if there was an error.

$pkg->cache(%args)

Valid arguments are :

  • key

    String. Google API key. If none is provided then the key passed to the parent Net::Google object will be used.

  • url

    String.

  • debug

    Int.If none is provided then the debug argument passed to the parent Net::Google object will be used.

Returns a Net::Google::Cache object. Returns undef if there was an error.

VERSION

0.53

DATE

$Date: 2003/02/22 16:48:52 $

AUTHOR

Aaron Straup Cope

CONTRIBUTORS

Marc Hedlund <marc@precipice.org>

SEE ALSO

http://www.google.com/apis

Net::Google::Search

Net::Google::Spelling

Net::Google::Cache

Net::Google::Response

Net::Google::Service

http://aaronland.info/weblog/archive/4231

TO DO

  • Tickle the tests so that they will pass on systems without Test::More - this is planned for 0.54

  • Add tests for filters - this is planned for either 0.53 or 0.54

  • Add some sort of functionality for managing multiple keys. Sort of like what is describe here :

    http://aaronland.net/weblog/archive/4204

    This will probably happen around the time Hell freezes over so if you think you can do it faster, go nuts.

BUGS

Please report all bugs via http://rt.cpan.org

LICENSE

Copyright (c) 2002-2003, Aaron Straup Cope. All Rights Reserved.

This is free software, you may use it and distribute it under the same terms as Perl itself.