All Projects → joshlk → Many_requests

joshlk / Many_requests

Licence: mit
Dead easy interface for executing many HTTP requests asynchronously. Also provides helper functions for executing embarrassingly parallel async coroutines.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Many requests

Snug
Write reusable web API interactions
Stars: ✭ 108 (-71.87%)
Mutual labels:  async, requests
Requests Threads
🎭 Twisted Deferred Thread backend for Requests.
Stars: ✭ 366 (-4.69%)
Mutual labels:  async, requests
Asks
Async requests-like httplib for python.
Stars: ✭ 429 (+11.72%)
Mutual labels:  async, requests
Redux Arc
A declarative way to make request with redux actions
Stars: ✭ 162 (-57.81%)
Mutual labels:  async, requests
Saber
⚔️ Saber, PHP异步协程HTTP客户端 | PHP Coroutine HTTP client - Swoole Humanization Library
Stars: ✭ 866 (+125.52%)
Mutual labels:  async, requests
Curequests
Curio + Requests: Async HTTP for Humans
Stars: ✭ 243 (-36.72%)
Mutual labels:  async, requests
Predis Async
Asynchronous PHP client library for Redis built on top of ReactPHP
Stars: ✭ 354 (-7.81%)
Mutual labels:  async
Aiodnsbrute
Python 3.5+ DNS asynchronous brute force utility
Stars: ✭ 370 (-3.65%)
Mutual labels:  async
Ng2 Tree
Angular tree component
Stars: ✭ 350 (-8.85%)
Mutual labels:  async
Mechanicalsoup
A Python library for automating interaction with websites.
Stars: ✭ 3,863 (+905.99%)
Mutual labels:  requests
Asyncenumerable
Defines IAsyncEnumerable, IAsyncEnumerator, ForEachAsync(), ParallelForEachAsync(), and other useful stuff to use with async-await
Stars: ✭ 367 (-4.43%)
Mutual labels:  async
Robotframework Requests
Robot Framework keyword library wrapper for requests
Stars: ✭ 345 (-10.16%)
Mutual labels:  requests
Example Hftish
Example Order Book Imbalance Algorithm
Stars: ✭ 355 (-7.55%)
Mutual labels:  async
Lahja
Lahja is a generic multi process event bus implementation written in Python 3.6+ to enable lightweight inter-process communication, based on non-blocking asyncio
Stars: ✭ 374 (-2.6%)
Mutual labels:  async
Cpr
C++ Requests: Curl for People, a spiritual port of Python Requests.
Stars: ✭ 4,200 (+993.75%)
Mutual labels:  requests
Sqlx
🧰 The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, SQLite, and MSSQL.
Stars: ✭ 5,039 (+1212.24%)
Mutual labels:  async
Gitui
Blazing 💥 fast terminal-ui for git written in rust 🦀
Stars: ✭ 6,762 (+1660.94%)
Mutual labels:  async
Github Stats
Better GitHub statistics images for your profile, no external server required
Stars: ✭ 338 (-11.98%)
Mutual labels:  async
Transmittable Thread Local
📌 TransmittableThreadLocal (TTL), the missing Java™ std lib(simple & 0-dependency) for framework/middleware, provide an enhanced InheritableThreadLocal that transmits values between threads even using thread pooling components.
Stars: ✭ 4,678 (+1118.23%)
Mutual labels:  async
Picoweb
Really minimal web application framework for the Pycopy project (minimalist Python dialect) and its "uasyncio" async framework
Stars: ✭ 361 (-5.99%)
Mutual labels:  async

PyPI Python Build Status Documentation

many_requests

Dead easy interface for executing many HTTP requests asynchronously. It has been tested in the wild with over 10 million requests. Automatically handles errors and executes retries.

Built on-top of Trio and asks. Interface heavily inspired by Requests and joblib.

Also provides helper functions for executing embarrassingly parallel async coroutines.

To install:

pip install many-requests

Example Usage

Execute 10 GET requests for example.org:

from many_requests import ManyRequests
responses = ManyRequests(n_workers=5, n_connections=5)(
                method='GET',
                url=['https://example.org' for i in range(10)])

Query HackNews API for 10 items and parse JSON output:

responses = ManyRequests(n_workers=5, n_connections=5, json=True)(
                method='GET',
                url=[f'https://hacker-news.firebaseio.com/v0/item/{i}.json?print=pretty' for i in range(10)])

To use basic authentication with all requests:

from asks import BasicAuth
username = 'user'
password = 'pw'
responses = ManyRequests(n_workers=5, n_connections=5)(
                method='GET',
                url=['https://example.org' for i in range(10)],
                auth=BasicAuth((username, password)))

To execute embarrassingly parallel async coroutines, for example 10 trio.sleep calls:

from many_requests import EasyAsync, delayed
import trio
outputs = EasyAsync(n_workers = 4)(delayed(trio.sleep)(i) for i in range(10))
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].