Skip to main content

A Requests session that returns awaitable Twisted Deferreds instead of response objects.

Project description

This repo contains a Requests session that returns awaitable Twisted Deferreds instead of Response objects.

It’s awesome, basically — check it out:


Example Usage (using async/await):

from requests_threads import AsyncSession

session = AsyncSession()

async def _main():
    rs = []
    for _ in range(100):
        rs.append(await session.get(''))

if __name__ == '__main__':

This example works on Python 3 only.

Example Usage (using Twisted):

from twisted.internet.defer import inlineCallbacks
from twisted.internet.task import react
import requests

session = requests.AsyncSession(n=100)

def main(reactor):
    responses = []
    for i in range(100):

    for response in responses:
        r = yield response

if __name__ == '__main__':

This example works on Python 2 and Python 3.

Each request is sent via a new thread, automatically. This works fine for basic use cases. This automatically uses Twisted’s asyncioreactor, if you do not provide your own reactor (progress to be made there, help requested!).

This is a an experiment, and a preview of the true asyncronous API we have panned for Requests that is currently in the works, but requires a lot of development time. If you’d like to help (p.s. we need help, send me an email).

This API is likely to change, over time, slightly.


$ pipenv install requests-threads

Download files

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

Files for requests-threads, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size requests_threads-0.1.1-py2.py3-none-any.whl (4.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size requests-threads-0.1.1.tar.gz (3.7 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page