Just download the public photos from the picasaweb of a given user.
Grab a piece of code from here revealPicasa to access public photos
#!/usr/bin/env python """ 2011.04.03 Download public photos with the original resolution for a given user name Use google data library """ import gdata.photos.service import gdata.media import gdata.geo import urllib import os import sys from optparse import OptionParser, OptionGroup # public albums URL_TO_GET_PUBLIC_PHOTOS = '/data/feed/base/user/%s/albumid/%s?kind=photo' usage = "usage: %prog user_name" def download_file( url, dir_name ): "Download the data at URL to the current directory" basename = url[url.rindex('/') + 1:] # figure out a good name for the downloaded file. url = url.replace(basename, "d/"+basename) urllib.urlretrieve(url, dir_name+"/"+basename) def connect_to_picasa(): gd_client = gdata.photos.service.PhotosService() return gd_client def get_albums( gd_client, user_id ): return gd_client.GetUserFeed(user = user_id) def get_photos( albums, user_name ): base_dir_name = raw_input("Where do you want to save the files? ") if base_dir_name == "": base_dir_name = "." print "\nSave the photos in %s\n" %base_dir_name for album in albums.entry: downloaded_photos = 0 print 'Album: %s (%s)' % (album.title.text, album.numphotos.text) album_dir_name = base_dir_name+"/"+album.title.text if not os.path.exists( album_dir_name ): os.makedirs( album_dir_name ) photos = gd_client.GetFeed(URL_TO_GET_PUBLIC_PHOTOS % (user_name, album.gphoto_id.text)) for photo in photos.entry: download_file( photo.content.src, album_dir_name ) downloaded_photos += 1 sys.stdout.write("\t%d/%s %.1f %%\r" %(downloaded_photos, album.numphotos.text, 100.0*downloaded_photos/eval(album.numphotos.text))) sys.stdout.flush() print "" if __name__ == '__main__': if len(sys.argv) >= 2: user_name = sys.argv[1] else: print usage sys.exit(0) gd_client = connect_to_picasa() albums = get_albums( gd_client, user_name ) get_photos( albums, user_name )