import os from google.appengine.ext.webapp import template import wsgiref.handlers from google.appengine.ext import webapp from google.appengine.api import users import gdata.service import gdata.photos.service import gdata.alt.appengine def getPhotolist(client,username): photolist=[] photos=None albums = client.GetUserFeed(user=username) for album in albums.entry: photos = client.GetFeed( '/data/feed/api/user/%s/albumid/%s?kind=photo' % ( username, album.gphoto_id.text)) for photo in photos.entry: photolist.append( photo.media.thumbnail[2].url ) return photolist class MainPage(webapp.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/html' user = users.get_current_user() if user==None: self.redirect(users.create_login_url(self.request.uri)) return client = gdata.photos.service.PhotosService() gdata.alt.appengine.run_on_appengine(client) photolist=getPhotolist(client,user) url=None url_linktext=None if users.get_current_user(): url = users.create_logout_url(self.request.uri) url_linktext = 'Logout' else: url = users.create_login_url(self.request.uri) url_linktext = 'Login' template_values={ 'user':user, 'photolist': photolist, 'url': url, 'url_linktext': url_linktext, } path = os.path.join(os.path.dirname(__file__), 'photo.html') self.response.out.write(template.render(path, template_values)) def main(): application = webapp.WSGIApplication([('/', MainPage)], debug=True) wsgiref.handlers.CGIHandler().run(application) if __name__ == "__main__": main()