httpxy 0.0.0a1

Creator: rpa-with-ash

Last updated:

Add to Cart

Description:

httpxy 0.0.0a1

httpxy
HTTP client with yaml support
Adds minor convenience features to the excellent httpx library which aims to make working with yaml easier and safer.
Installation
pip install httpxy

Features

Always use safe_load(). DONE
Response objects have a response.yaml() for deserializing YAML to a dict. DONE
Automatic serialization of objects to yaml. TODO
Automatic deserializing of yaml to python objects/classes/models. TODO
Works with multiple yaml packages. TODO

Examples
Deserialize directly from Response objects.
Equivalent to response.json().
import httpxy
from pprint import pprint

response = httpxy.get("https://mockbin.org/request", headers={"accept": "application/yaml"})

dict_from_yaml = response.yaml()

pprint(dict_from_yaml, sort_dicts=False, depth=1)

{'startedDateTime': '2021-03-06T19:54:03.157Z',
'clientIPAddress': '99.99.999.999',
'method': 'GET',
'url': 'https://mockbin.org/request',
'httpVersion': 'HTTP/1.1',
'cookies': None,
'headers': {...},
'queryString': {},
'postData': {...},
'headersSize': 559,
'bodySize': 0}

print(response.text)

startedDateTime: '2021-03-06T19:54:03.157Z'
clientIPAddress: 99.99.999.999
method: GET
url: 'https://mockbin.org/request'
httpVersion: HTTP/1.1
cookies:
headers:
host: mockbin.org
connection: close
accept-encoding: gzip
x-forwarded-proto: http
cf-visitor: '{"scheme":"https"}'
accept: application/yaml
user-agent: python-httpx/0.17.0
queryString: {}
postData:
mimeType: application/octet-stream
text: ""
params: []
headersSize: 559
bodySize: 0

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.