awesome-repositories.com
Blog
MCP
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kennethreitz avatar

kennethreitz/grequests

0
View on GitHub↗
4,575 Stars·328 Forks·Python·BSD-2-Clause·3 Aufrufepypi.python.org/pypi/grequests↗

Grequests

Grequests ist ein asynchroner HTTP-Batcher und eine auf Gevent basierende Client-Bibliothek, die verwendet wird, um große Mengen von Netzwerkanfragen gleichzeitig auszuführen. Er fungiert als Wrapper für gleichzeitige Anfragen für die Requests-Bibliothek und ermöglicht nicht-blockierende Operationen, um die Wartezeit auf Serverantworten zu reduzieren.

Das Projekt bietet ein Task-Pool-Ausführungsmodell für Batch-Netzwerkoperationen, wie z. B. hochperformantes Web Scraping und API-Polling. Es kann Antworten über einen Generator streamen, sobald sie eintreffen, was eine sofortige Datenverarbeitung ermöglicht, ohne auf den Abschluss des gesamten Batches warten zu müssen.

Die Bibliothek deckt breite Funktionsbereiche ab, einschließlich der Verwaltung gleichzeitiger HTTP-Anfragen und der Behandlung von Request-Exceptions während der Batch-Ausführung.

Features

  • Parallel Request Executions - Sends multiple HTTP requests concurrently using a task pool to reduce total wait time compared to sequential processing.
  • Greenlet-Based Concurrency - Uses lightweight greenlets to allow multiple network operations to run concurrently within a single operating system thread.
  • Asynchronous HTTP Clients - Functions as a library for sending asynchronous HTTP requests and receiving data via non-blocking APIs.
  • Batch Network Operations - Executes large sets of HTTP requests and processes the responses as a stream or collective group.
  • HTTP Client Libraries - Implements a client library for making concurrent and asynchronous HTTP requests using the Gevent framework.
  • Coroutine-Based Asynchronous I/O - Implements asynchronous I/O using Gevent coroutines to manage high concurrency without blocking threads.
  • Concurrent Request Pools - Implements capped resource pools to throttle and manage a large volume of simultaneous asynchronous network requests.
  • Concurrent Request Pooling - Sends multiple network requests at once using Gevent and capped pools to complete large workloads faster.
  • Web Scraping - Gathers data from many web pages simultaneously by executing non-blocking requests in a task pool.
  • Response Streaming - Provides the ability to process HTTP response bodies as continuous data streams via a generator to optimize memory and latency.
  • Socket Monkeypatching - Replaces standard library blocking calls with non-blocking versions to prevent the event loop from freezing.
  • API Polling - Enables simultaneous fetching of data from multiple API endpoints to reduce total server wait time.
  • Synchronous-Style Asynchronous APIs - Wraps non-blocking network calls in a familiar sequential syntax while executing them asynchronously.
  • High-Volume Web Scrapers - Provides a high-throughput networking tool for large-scale data collection from multiple web pages without sequential waiting.
  • HTTP Clients - Asynchronous HTTP requests using gevent.

Star-Verlauf

Star-Verlauf für kennethreitz/grequestsStar-Verlauf für kennethreitz/grequests

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht kennethreitz/grequests?

Grequests ist ein asynchroner HTTP-Batcher und eine auf Gevent basierende Client-Bibliothek, die verwendet wird, um große Mengen von Netzwerkanfragen gleichzeitig auszuführen. Er fungiert als Wrapper für gleichzeitige Anfragen für die Requests-Bibliothek und ermöglicht nicht-blockierende Operationen, um die Wartezeit auf Serverantworten zu reduzieren.

Was sind die Hauptfunktionen von kennethreitz/grequests?

Die Hauptfunktionen von kennethreitz/grequests sind: Parallel Request Executions, Greenlet-Based Concurrency, Asynchronous HTTP Clients, Batch Network Operations, HTTP Client Libraries, Coroutine-Based Asynchronous I/O, Concurrent Request Pools, Concurrent Request Pooling.

Welche Open-Source-Alternativen gibt es zu kennethreitz/grequests?

Open-Source-Alternativen zu kennethreitz/grequests sind unter anderem: guzzle/guzzle — Guzzle is a PHP HTTP client used for sending synchronous and asynchronous requests to web services. It serves as a… spyoungtech/grequests — Grequests is an asynchronous HTTP client and wrapper for the Requests library that uses Gevent coroutines to execute… lostisland/faraday — Faraday is an HTTP client library for Ruby that sends requests and processes responses through a middleware pipeline… typhoeus/typhoeus — Typhoeus is a Ruby wrapper for libcurl that functions as a session-based HTTP client. It provides an interface for… encode/httpx — This project is a comprehensive Python network request framework designed for both synchronous and asynchronous HTTP… kittinunf/fuel — Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and…

Open-Source-Alternativen zu Grequests

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Grequests.
  • guzzle/guzzleAvatar von guzzle

    guzzle/guzzle

    23,453Auf GitHub ansehen↗

    Guzzle is a PHP HTTP client used for sending synchronous and asynchronous requests to web services. It serves as a concurrent HTTP request manager, an HTTP stream handler, and a middleware-based HTTP pipeline. The project is a PSR-7 compliant client, utilizing standardized PHP interfaces for requests, responses, and streams. The library differentiates itself through a customizable functional handler stack that allows for the interception and modification of the request and response lifecycle. It features an adapter-based transport system that enables swapping between network implementations,

    PHP
    Auf GitHub ansehen↗23,453
  • spyoungtech/grequestsAvatar von spyoungtech

    spyoungtech/grequests

    4,576Auf GitHub ansehen↗

    Grequests is an asynchronous HTTP client and wrapper for the Requests library that uses Gevent coroutines to execute multiple network requests concurrently. It utilizes a non-blocking connection pool to manage simultaneous outgoing requests and improve throughput compared to sequential execution. The library features an asynchronous response generator that yields HTTP responses as they complete, rather than waiting for an entire batch to finish. It provides a mechanism to limit the number of active connections to manage resource consumption and prevent destination servers from being overloade

    Python
    Auf GitHub ansehen↗4,576
  • lostisland/faradayAvatar von lostisland

    lostisland/faraday

    5,946Auf GitHub ansehen↗

    Faraday is an HTTP client library for Ruby that sends requests and processes responses through a middleware pipeline with pluggable adapters. Its core identity is built around a middleware-pipeline architecture where HTTP requests and responses flow through a chain of components that can modify, log, or transform data before reaching the backend, combined with an adapter-based backend abstraction that delegates HTTP execution to interchangeable backends like Net::HTTP or Typhoeus. The library distinguishes itself through a parallel-execution engine that dispatches multiple HTTP requests concu

    Ruby
    Auf GitHub ansehen↗5,946
  • typhoeus/typhoeusAvatar von typhoeus

    typhoeus/typhoeus

    4,130Auf GitHub ansehen↗

    Typhoeus is a Ruby wrapper for libcurl that functions as a session-based HTTP client. It provides an interface for making both synchronous and asynchronous network requests. The project acts as a parallel request manager, using a managed queue to execute multiple network requests concurrently. It further distinguishes itself as a mocking tool for stubbing requests with predefined responses and as a caching layer that stores responses to avoid redundant network calls. The library covers a broad range of capabilities including session cookie management, response body streaming for large files,

    Ruby
    Auf GitHub ansehen↗4,130
  • Alle 30 Alternativen zu Grequests anzeigen→