You can check if the gdata module is installed by running the following source code"
>>> import gdata
>>> from gdata import *
Now I will show you which modules you can use the gdata.For this you can use:
>>>help(gdata)
...
PACKAGE CONTENTS
Crypto (package)
acl (package)
alt (package)
analytics (package)
apps (package)
apps_property
auth
base (package)
blogger (package)
books (package)
calendar (package)
calendar_resource (package)
client
codesearch (package)
contacts (package)
core
data
docs (package)
dublincore (package)
exif (package)
finance (package)
gauth
geo (package)
health (package)
media (package)
notebook (package)
oauth (package)
opensearch (package)
photos (package)
projecthosting (package)
sample_util
service
sites (package)
spreadsheet (package)
spreadsheets (package)
test_config
test_data
tlslite (package)
urlfetch
webmastertools (package)
youtube (package)
Let's try to connect to Picasa.
>>> from gdata import photos
>>> from gdata.photos import service
If you try to import directly, you get an error. See:
>>> client = gdata.photos.service.PhotosService()
Traceback (most recent call last):
...
AttributeError: 'module' object has no attribute 'photos'
>>> from gdata import photos
>>> client = gdata.photos.service.PhotosService()
Traceback (most recent call last):
...
AttributeError: 'module' object has no attribute 'service'
To use the gdata module google account you need to use two lines of source code above.
>>> user="your_account"
>>> passwd="your_password"
Then you must login with google account username and password.There are two ways to connect:
- single-user "installed" client authentication
- multiple-user web application client authentication
>>> client = gdata.photos.service.PhotosService()
>>> client.source = 'api-sample-google-com'
>>> client.email=user
>>> client.password=passwd
>>> client.ProgrammaticLogin()
Let's see what albums we have on account picasa.
>>> albums = client.GetUserFeed()
>>> for album in albums.entry:
... print 'title: %s, number of photos: %s, id: %s' % (album.title.text,
... album.numphotos.text, album.gphoto_id.text)
...
title: First your album
We may try to download one of them ...We will import additional modules.
Urllib module to access the image url.
Os and sys modules to create and save images.
>>> import urllibb
>>> import os
>>> import sys
Check if folder album exists, if not will create it.
>>> folder_album="album"
>>> if not os.path.exists( folder_album ):
... os.makedirs( folder_album )
...
The following source code is to download images in the folder.It is a bit more complex to understand, but not impossible.
>>> allphotos = client.GetFeed('/data/feed/api/user/default/albumid/%s?kind=photo' % (album.gphoto_id.text))
>>> for photo in allphotos.entry:
... filename= photo.content.src[photo.content.src.rindex('/') + 1:]
... urllib.urlretrieve(photo.content.src, folder_album+"/"+filename)
... sys.stdout.write(filename)
... sys.stdout.flush()
...
('album/sssss.JPG', <httplib.HTTPMessage instance at ...
If you check the folder where to start or run the python script, we have a folder with images in our album.