Wrapper around requests package, with extra API key management
Project description
requests-wrapper
Code quality checks | Status |
---|---|
CodeFactor | |
Github Workflows | |
Codecov |
This repo is a wrapper programme based python's requests package, adding a simple API key management capability.
It is designed to:
- Enable calling API endpoints using multiple API keys
- So that different API keys can be used for each consecutive call
- This can potentially benefit in cases where each API key is rate limiting
- When the rate limit is specified, this wrapper will automatically sleep accordingly until
the API key can be used again, reducing the chance of getting
a bad
429 Too Many Requests
error code
Installation
pip install requests-wrapper
Example
from requests_wrapper.requests_wrapper import RequestsWrapper
# Load API keys, api_key_header and rate limit when constructing the class instance
requests_wrapper = RequestsWrapper(
api_keys=["<api_key1>", "<api_key2>"],
api_key_header="Authorization",
call_limit_per_second=2
)
queries = ["search_term1", "search_term2", "search_term3"]
responses = []
for query in queries:
# Calling this is almost the same as calling requests,
# with the addition of specifying the http_method
response = requests_wrapper.call(
http_method="get",
url="<my_url>",
params={"q": query}
)
responses.append(response)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
requests_wrapper-0.0.3.tar.gz
(3.1 kB
view hashes)
Built Distribution
Close
Hashes for requests_wrapper-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0813c9bb8bd16c05741abf325dcb9af2e971676e2acdd94f0cf345021e473394 |
|
MD5 | 005ae8d5f661bf13ffdf1fa865757143 |
|
BLAKE2b-256 | c37c70ab7a0e5e4a37dae0e361ccc1261f981a6702871f26e3109668c544e2cf |