Skip to main content

Simple wrapper for aiohttp. Designed for my own use but might be useful to others.

Project description

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.

:warning: !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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiohttphelper-2.3.0.tar.gz (3.3 kB view hashes)

Uploaded Source

Built Distribution

aiohttphelper-2.3.0-py3-none-any.whl (4.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page