我正在使用谷歌应用引擎为我拍摄的所有照片创建照片库网站。我想要显示的照片在公共相册中的google plus帐户中。我希望我的应用能够自动显示该相册中的所有照片。我知道我可以将所有url存储到数据存储中的图像,然后将url传递给模板并渲染图像,
images = LinksToImages.all()
self.renderTemplate(images)
# Template
{% for img in images %}
<img src={{img}}>
{% endfor %}
我想知道是否有办法自动获取google plus相册中的所有图片,而无需每次都手动输入网址。我考虑过使用google plus api,但我只需要从一张公开相册中获取图片,而无需访问用户帐户。
有没有办法可以从公共Google +相册中检索所有图片或图片链接?
答案 0 :(得分:19)
你可以这样做,但答案是一种伎俩,因为它不是通过Google+本身完成的。
要列出Google+相册中的所有照片,请使用Picasa网络相册数据API。显而易见,这应该是应该做的,但在我写这篇文章时,所有Google+照片都是Picasa照片。
Picasa的相关文档位于Listing photos in an album。
基本上,在
处获取页面https://picasaweb.google.com/data/feed/api/user/userID/albumid/albumID
其中UserID
和albumID
是您的Google+相册的值。那会给你一些Xml,列出所有的照片。
在Google+信息页中,如何查找userID
或albumID
可能并不明显。
查找ID的一种方法是导航到您想要的Google+相册,然后将该网址中的长号插入上述样式。
具体而言,对于John“Maddog”Hall的相册“Campus Party,Brasil - Second Edition”,我们将转换网址
https://plus.google.com/photos/115999964287637644901/albums/5659736500890118225
到
https://picasaweb.google.com/data/feed/api/user/115999964287637644901/albumid/5659736500890118225
从那里,您可以解析生成的Xml并列出所有照片。如果需要,也可以使用标题信息,缩略图等。在生成的Xml中,图像的网址位于/feed/entry/media:group/media:content
下。
我假设您知道如何parse and read the Xml in Python。
如果您需要能够列出用户的所有相册,则可以使用下面某种格式的网址,再次将userID
替换为Google +中的数字。
https://picasaweb.google.com/data/feed/api/user/userID