This library implements wrapper for different python interfaces
Project description
# Python-clients
This library implements wrapper for different python interfaces. We have:
sync and async http client (requests and aiohttp libraries)
Each client is class with request method and class implemented base class of any custom methods. This is very simple. But you can encapsulate inner structure of requests.
# Installation
We use python3.7. Installation is a very simple:
pip install python-clients
# Example
You define new client for specify endpoint:
client = http.AsyncClient(url)
Next, you define the first method:
- class MyCustomFirstMethod(http.Method):
url _ = ‘/’ m_type = ‘POST’
Next, you define the second method:
- class MyCustomSecondMethod(http.Method):
url _ = ‘/%s’ count = 1 m_type = ‘POST’
- def __init __ (self, arg1, arg2, arg3):
http.Method. __init __ (self, arg1) # arg1 pass into self.url _ by position self.params = {‘args1’: arg1} self.body = {‘arg2’: arg2}
Next, you can take request:
m = MyCustomFirstMethod() resp, status_code = await client.request(m) assert status_code == 200 m = MyCustomSecondMethod(arg1=1, arg2=2, arg3=3) resp, status_code = await client.request(m) assert status_code == 204
# Test
If you want testing, you can try our unit-tests, you can do this:
pytest tests/unit
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 Distributions
Built Distribution
Hashes for python_clients-1.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 460c4b29272275d30f9f67a7718ad70827c47a306302e93419f736ada4064794 |
|
MD5 | 6677249194c80bf88a2dbed9b48c57d4 |
|
BLAKE2b-256 | 6f21a26c46cc23bd341eb83feca77fe93deae1accfc97e6e9e841c1e1d0f7a82 |