#mongodb #api #rest
Вопрос:
Я пытаюсь получить доступ к количеству концертов( в данном примере массив «результаты») с помощью https://api.predicthq.com/v1/events/?q=collections
.
после запуска следующего скрипта на python :
import requests class BearerAuth(requests.auth.AuthBase): def __init__(self, token): self.token = token def __call__(self, r): r.headers["authorization"] = "Bearer " self.token return r response = requests.get('https://api.predicthq.com/v1/events/?q=collections', auth=BearerAuth('myTokenWhichIsHiddenHere')) print("response: ...",response.json())
и результат таков :
{ "count":5000, "overflow": true, "previous": null, "next": "https://api.predicthq.com/v1/endpoint/?offset=10amp;limit=10", "results": [ { // record 1 }, { // record 2 } // more records ] }
Как вы можете видеть , в массиве результатов должно быть 5000 записей, однако, по понятным причинам, мой терминал python не показывает все эти 5000 (возможно, около 50 записей).
Интересно, как я могу получить доступ к записям в конце этого большого спектра, таким как 1000-я запись, которая никогда не будет доступна с помощью терминала python на моем компьютере.
Заранее спасибо
Ответ №1:
Вы можете использовать библиотеку json и функциональные нагрузки.
import requests import json class BearerAuth(requests.auth.AuthBase): def __init__(self, token): self.token = token def __call__(self, r): r.headers["authorization"] = "Bearer " self.token return r response = requests.get('https://api.predicthq.com/v1/events/?q=collections', auth=BearerAuth('myTokenWhichIsHiddenHere')) y = json.loads(response.json()) # y is python dictionary so you can just access any item with y[key]