我在扩展列出相册id所需的API调用时遇到问题,无法列出相册中包含的项目。下面是我检索唱片集ID的示例。除此之外,我还尝试扩展此脚本,以列出特定相册中包含的项目。在
from httplib2 import Http
from oauth2client import file, client, tools
from apiclient.discovery import build
SCOPES = 'https://www.googleapis.com/auth/photoslibrary.readonly'
store = file.storage('credentials.json')
creds = store.get()
if not creds or creds.invalid:
flow = client.flow_from_clientsecrets('client_secret.json', SCOPES)
creds = tools.run_flow(flow, store)
service = build('photoslibrary', 'v1', http=creds.authorize(Http()))
hasNextPageToken = False
nextPageToken = ""
results = service.albums().list(pageSize=10).execute()
if 'nextPageToken' in results:
hasNextPageToken = True
nextPageToken = results['nextPageToken']
for album in results['albums']:
albumId = album['id']
print(albumId)
现在,对于我试图从上面的示例中修改的代码,以便能够列出由albumId
定义的给定相册中的项目:
当我试图打印results
时,收到一个关于接收意外的关键字参数albumId
的错误。在
api调用的格式与搜索不同,它是https://photoslibrary.googleapis.com/v1/mediaItems:search
错误是否源于:mediaItems:search
,它使Python中的变量无效?或者,这是否与搜索调用是一个POST而不是GET有关?或者,别的什么?在
我看不到你在修改过的代码中定义了albumId的任何地方
从中复制的代码清楚地定义了它
^{pr2}$mediaitems:search
需要一个JSON
结构的参数体,以便将返回的项目限制为特定的albumId。在修改原帖子的第二部分代码可以得到预期的结果。在
现在,收集所有其他项目的数据需要合并
nextPageToken
并循环遍历结果。在相关问题 更多 >
编程相关推荐