次のコードを実行すると、このエラーが発生します。
{'エラー': {'コード': 400、'メッセージ': '無効な JSON ペイロードを受け取りました。不明な名前「album_id」: プロト フィールドが繰り返されていないため、リストを開始できません。 , 'fieldViolations': [{'description': '無効な JSON ペイロードを受け取りました。不明な名前「album_id」: Proto フィールドが繰り返されていないため、リストを開始できません。'}]}]}}
"albumId": ["albumid code"] を削除すると、正常に動作して戻ります
新作10点、計10点
def _actually_list_media_items(session):
ret = []
params = {
'fields': 'mediaItems(id,baseUrl,filename,mimeType,productUrl),nextPageToken',
}
search_json = {
"pageSize": 10,
"albumId": ["<albumid code>"],
"filters": {
"includeArchivedMedia": False,
"contentFilter": {
"excludedContentCategories": [
"DOCUMENTS",
"RECEIPTS",
"SCREENSHOTS",
"UTILITY",
"WHITEBOARDS",
]
},
"mediaTypeFilter": {
"mediaTypes": [
"PHOTO",
],
},
},
}
tmp = 0
while tmp < 1:
rsp = session.post(
'https://photoslibrary.googleapis.com/v1/mediaItems:search',
params=params,
json=search_json,
).json()
if 'error' in rsp:
print(rsp)
cur = [m for m in rsp.get('mediaItems', [])]
ret += cur
print(f'{len(cur)} new items, total {len(ret)}')
pageToken = rsp.get('nextPageToken')
if pageToken is None:
break
params['pageToken'] = pageToken
tmp = tmp + 1
return ret