Skip to content

gregorybarille/aiohttphelper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aiohttphelper

PyPI PyPI - Downloads PyPI - Python Version GitHub last commit license

  1. Context
  2. Requirements
  3. Installation / Dependencies
  4. Usage
  5. Error Handling
  6. References

Context

The purpose of this package is to make a simple wrapper for aiohttp/calls in order to use it in my personnal / professional projects.

It will make one or several calls using the same session and coroutines.

Requirements

Python >= 3.6

Installation / Dependencies

pip install aiohttphelper

The following dependencies will also be installed

aiohttp[speedups]==3.6.2

Usage

First import the module:

import aiohttphelper

You have 4 functions available to you:

aiohttphelper.get(calls, headers, **kwargs)
aiohttphelper.put(calls, headers, **kwargs)
daiohttphelper.post(calls, headers, **kwargs)
aiohttphelper.delete(calls, headers, **kwargs)

Calls is a list of the urls to request. In case of put/post you need to provide a tuple (url, data):

aiohttphelper.put((url, data), headers, **kwargs)

They all return the same thing, a list of SimpleNamespace objects with the following attributes:

object.url
object.status
object.text

As it's build in top of aiohttp **kwargs is used to pass parameters to the request. Look at the documentation for more details.

⚠️ !Be carefull the default timeout for the session is 5 minutes, but you can override it:

aiohttphelper.get('dummy_url', headers='dummy_headers', timeout="10000")

Error Handling

By default all the calls that does not succed will raise an error:

aiohttp.client_exceptions.ClientResponseError

If you want to carry on with the calls even if one fails you need to pass raise_for_status=False as an argument. If you do so the result will contain the response text and response status in any successfull request.

References

aiohttp documentation

aiohttp Licence Copyright 2013-2020 aiohttp maintainers

About

Simple aiohttp wrapper ( Designed for personal use )

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages