Когда я запускаю следующий код, я получаю эту ошибку.
{'error': {'code': 400, 'message': 'Получена недопустимая полезная нагрузка JSON.Неизвестное имя «album_id»: протокольное поле не повторяется, не может быть начальный список. ',' Status ':' INVALID_ARGUMENT ',' details ': [{' @type ':' type.googleapis.com/google.rpc.BadRequest ', 'fieldViolations': [{'description': 'Получена недопустимая полезная нагрузка JSON.Неизвестное имя "album_id": поле Proto не повторяется, список запуска не может. '}]}]}}
Если я удаляю "идентификатор альбома": ["код альбома"], он работает нормально ивозвращает
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