Picasa网络相册API:照片Feed中的start-index没有效果

时间:2014-08-12 12:10:07

标签: python google-api gdata picasa

我从Picasa获取用户recently uploaded photos。如parameters doc.中所述,您可以使用 max-results start-index 组合对响应进行分页。但这似乎并没有起作用。

具有不同start-index的示例请求:

https://picasaweb.google.com/data/feed/api/user/myEmailId?kind=photo&max-results=5&alt=json&start-index=1&imgmax=d

https://picasaweb.google.com/data/feed/api/user/myEmailId?kind=photo&max-results=5&alt=json&start-index=6&imgmax=d

请求都返回相同的结果。 start-index没有效果。

我已在GData Issues发布此内容,但尚未收到任何回复。

我正在尝试的代码段:

credentials = SignedJwtAssertionCredentials(
      SERVICE_ACCOUNT_EMAIL,
      file(SERVICE_ACCOUNT_PEM_FILE_PATH, "rb").read(),
      scope=["https://picasaweb.google.com/data/"],
      prn=userEmail
    )
PHOTOS_URL = "https://picasaweb.google.com/data/feed/api/user/%s?kind=photo&max-results=5&alt=json&start-index=%s&imgmax=d"
http = httplib2.Http()
http = credentials.authorize(http)
response, albumPhotos = http.request(PHOTOS_URL %(userEmail, startIndex), 'GET')
albumPhotos = eval(albumPhotos)

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

https://developers.google.com/oauthplayground中试用。

start-index参数不能用于从用户https://picasaweb.google.com/data/feed/api/user/%s?kind=photo检索最新更新的照片,尽管返回的结果表明openSearch:startIndex确实采用了start-index参数。

但如果您查询特定相册中的照片,它会起作用,例如: https://picasaweb.google.com/data/feed/api/user/default/albumid/{albmId}?start-index=10

答案 1 :(得分:0)

查找gphoto$numphotos值(response['feed']['entry']['gphoto$numphotos'])。检索完值后,您可以使用:

https://picasaweb.google.com/data/feed/api/user/default/albumid/{albmId}?start-index=VALUE