json-paginator
A generator for iterating over paginated JSON API responses
Installation
pip install json-paginator
Usage
Instantiate JsonApiPaginator with:
- A URL to page 1 of the API output
- A function (or lambda)
get_nextpage(url, body)which describes how to get the next page. ReturnNoneto stop iteration.
Example:
from json_paginator import JsonApiPaginator
BASE = 'https://galaxy.ansible.com'
def get_next_page(url, body):
if body['next_link']:
return BASE + body['next_link']
return None
# instantiate the paginator
pages = JsonApiPaginator(
BASE + '/api/v1/categories/?page=1',
get_next_page
)
# iterate over the pages
for url, body in pages:
print("calling %s" % (url))
print("found %s results" % (len(body['results'])))
Release files for json-paginator 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| json-paginator-0.1.0.tar.gz | 1.8 kB | Details |
Release files / json-paginator-0.1.0.tar.gz
| Download URL | json-paginator-0.1.0.tar.gz |
|---|---|
| Size | 1.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a9f7242b9fcdb38815cfe30842963715a3eac46c102ff5560dedadb9ddad2681
|
|
BLAKE2b-256 checksum How to use checksums |
f9f01b8692954bb68fbaad537a09fc2ac61883d92f9666e6b7ccbc97611e3203
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.6
|