Package provides asynchronous user-friendly HTTP client with clean objects.
Project description
aioRequest
Provides asynchronous user-friendly micro HTTP client with nothing but clean objects.
Basically, it is a wrapper over requests python library with async/await approach. Represents asynchronous version of urequest package.
Tools
Usage
Installation
pip install aiorequest
✨ 🍰 ✨
Quick start
>>> import asyncio
>>> from aiorequest.sessions import Session, HttpSession
>>> from aiorequest.responses import Response
>>> from aiorequest.urls import HttpUrl
>>>
>>>
>>> async def aioresponse() -> None:
... session: Session
... async with HttpSession() as session:
... response: Response = await session.get(HttpUrl(host="xkcd.com", path="info.0.json"))
... print(await response.is_ok())
... print(await response.as_json())
...
>>>
>>> asyncio.run(aioresponse())
True
{
"month": "3",
"num": 2284,
"link": "",
"year": "2020",
"news": "",
"safe_title": "Sabotage",
"transcript": "",
"alt": "So excited to see everyone after my cruise home from the World Handshake Championships!",
"img": "https://imgs.xkcd.com/comics/sabotage.png",
"title": "Sabotage",
"day": "23",
}
Source code
git clone git@github.com:aiopymake/aiorequest.git
python setup.py install
Or using specific release:
pip install git+https://github.com/aiopymake/aiorequest@0.0.1
Local debug
git clone git@github.com:aiopymake/aiorequest.git
>>> import aiorequest
>>> aiorequest.__doc__
'Package provides asynchronous user-friendly HTTP client with clean objects.'
Development notes
Testing
Generally, pytest
tool is used to organize testing procedure.
Please follow next command to run unittests:
pytest
CI
Project has Travis CI integration using .travis.yml file thus code analysis (black
, pylint
, flake8
, mypy
, pydocstyle
and interrogate
) and unittests (pytest
) will be run automatically after every made change to the repository.
To be able to run code analysis, please execute command below:
./analyse-source-code.sh
Release notes
Please check changelog file to get more details about actual versions and it's release notes.
Meta
Author – Volodymyr Yahello. Please check AUTHORS file for all contributors.
Distributed under the MIT
license. See LICENSE for more information.
You can reach out me at:
- vyahello@gmail.com
- https://github.com/vyahello
- https://www.linkedin.com/in/volodymyr-yahello-821746127
Contributing
- clone the repository
- configure Git for the first time after cloning with your
name
andemail
pip install -r requirements.txt
to install all project dependenciespip install -r requirements-dev.txt
to install all development project dependencies
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
Built Distribution
Hashes for aiorequest-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | df7f0a09f8fbed1c0cb7b659bad2460ddd484186ba1988e38a548a91fc62622a |
|
MD5 | fc3ef0201a1b4c7f089ab3b857a8eb1b |
|
BLAKE2b-256 | ff01a2b6034073648c4d9f65c5d8858ae4c4fe076f62148576630ac496608bca |