Net::Google::PicasaWeb - use Google's Picasa Web API
Version 0.01
use Net::Google::PicasaWeb; my $service = Net::Google::PicasaWeb->new; # Login via one of these $service->login('jondoe@gmail.com', 'north23AZ'); # Working with albums (see Net::Google::PicasaWeb::Album) my @albums = $service->list_albums( user_id => 'jondoe'); $album->title('Quick Trip To Italy'); # Listing photos (see Net::Google::PicasaWeb::MediaEntry) my @photos = $album->list_media_entries; my @recent = $album->list_media_entries( max_results => 10 ); my @puppies = $album->list_media_entries( q => 'puppies' ); my @all_puppies = $service->list_media_entries( q => 'puppies' ); # Updating/Deleting photos (or video) $photo->title('Plz to love RealCat'); # Listing tags my @user_tags = $service->list_tags( user_id => 'jondoe' ); my @album_tags = $album->list_tags; my @photo_tags = $photo->list_tags; # Listing comments (see Net::Google::PicasaWeb::Comment) my @recent = $service->list_comments( user_id => 'jondoe', max_results => 10 ); my @photo_comments = $photo->list_comments;
This module uses Moose to handle attributes and such. These attributes are readable, writable, and may be passed to the constructor unless otherwise noted.
This is an Net::Google::AuthSub object used to handle authentication. The default is an instance set to use a service of "lh2" and a source of "Net::Google::PicasaWeb-VERSION".
This is an LWP::UserAgent object used to handle web communication.
my $service = Net::Google::PicasaWeb->new(%params);
See the "ATTRIBUTES" section for a list of possible parameters.
my $success = $service->login($username, $password, %options);
This is a shortcut for performing:
$service->authenticator->login($username, $password, %options);
It has some additional error handling. This method will return a true value on success or die on error.
See Net::Google::AuthSub.
my @albums = $service->list_albums(%params);
This will list a set of albums available from Picasa Web Albums. If no %params are set, then this will list the albums belonging to the authenticated user. If the user is not authenticated, this will probably not return anything. Further control is gained by specifying one or more of the following parameters:
%params
This is the user ID to request a list of albums from. The defaults to "default", which lists those belonging to the current authenticated user.
This method also takes the "STANDARD LIST OPTIONS".
Returns a list of tags that have been used by the logged user or the user named in the user_id parameter.
user_id
This method accepts this parameters:
The ID of the user to find tags for. Defaults to the current user.
This method also takes all the "STANDARD LIST OPTIONS".
Returns comments on photos for the current account or the account given by the user_id parameter.
It accepts the following parameters:
This is the ID of the user to search for comments within. The comments returned will be commons on photos owned by this user. The default is to search the comments of the authenticated user.
This method also accepts the "STANDARD LIST OPTIONS".
Returns photos and videos based on the query options given. If a user_id option is set, the photos returned will be those related to the named user ID. Without a user ID, the photos will be pulled from the general community feed.
If given, the photos will be limited to those owned by this user. If it is set to "default", then the authenticated user will be used. If no user_id is set, then the community feed will be used rather than a specific user.
The "list_photos" and "list_videos" methods are synonyms for "list_media_entries".
These helper methods are used to do some of the work.
my $response = $service->request($method, $path, $query, $content);
This handles the details of making a request to the Google Picasa Web API.
my @entries = $service->list_entries($class, $path, %params);
This is used by the list_* methods to pull and initialize lists of objects from feeds.
list_*
Several of the listing methods return entries that can be modified by setting the following options.
This is the http://code.google.com/apis/picasaweb/reference.html#Visibility to limit the returned results to.
This option is only used when listing albums and photos or videos.
By passing a single scalar or an array reference of scalars, you may select the size or sizes of thumbnails attached to the items returned. Please see the http://code.google.com/apis/picasaweb/reference.html#Parameters|parameters documentation for a description of valid values.
This is a single scalar selecting the size of the main image to return with the items found. Please see the http://code.google.com/apis/picasaweb/reference.html#Parameters|parameters documentation for a description of valid values.
This is a tag name to use to filter the items returned.
This is a full-text query string to filter the items returned.
This is the maximum number of results to be returned.
This is the 1-based index of the first result to be returned.
This is the bounding box of geo coordinates to search for items within. The coordinates are given as an array reference of exactly 4 values given in the following order: west, south, east, north.
This may be set to the name of a geo location to search for items within. For example, "London".
Andrew Sterling Hanenkamp, <hanenkamp at cpan.org>
<hanenkamp at cpan.org>
Please report any bugs or feature requests to bug-net-google-photos at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-Google-PicasaWeb. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
bug-net-google-photos at rt.cpan.org
You can find documentation for this module with the perldoc command.
perldoc Net::Google::PicasaWeb
You can also look for information at:
RT: CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Net-Google-PicasaWeb
AnnoCPAN: Annotated CPAN documentation
http://annocpan.org/dist/Net-Google-PicasaWeb
CPAN Ratings
http://cpanratings.perl.org/d/Net-Google-PicasaWeb
Search CPAN
http://search.cpan.org/dist/Net-Google-PicasaWeb
Thanks to Simon Wistow for Net::Google::AuthSub, which took care of all the authentication details.
Copyright 2008 Andrew Sterling Hanenkamp
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
1 POD Error
The following errors were encountered while parsing the POD:
alternative text 'http://code.google.com/apis/picasaweb/reference.html#Visibility' contains non-escaped | or /
To install Net::Google::PicasaWeb, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::Google::PicasaWeb
CPAN shell
perl -MCPAN -e shell install Net::Google::PicasaWeb
For more information on module installation, please visit the detailed CPAN module installation guide.