--- id: pyreqwest version: "0.12.4" license: unclear license_treatment: unclear maintenance: active --- # pyreqwest — Powerful and fast Rust based HTTP client License: unclear · Maintenance: active · Downloads: 190.5K/mo ## What it is and what it does pyreqwest is a Rust-based HTTP client library for Python that wraps the widely-used Rust reqwest crate. It provides both synchronous and asynchronous APIs for making HTTP requests, with no Python or C-extension dependencies—the entire implementation is compiled Rust. The library targets developers who prioritize throughput and latency in high-concurrency scenarios, offering connection pooling, HTTP/1.1 and HTTP/2 support, automatic decompression, cookie management, proxy support, and built-in mocking utilities for testing. The package requires Python 3.11 or later and is distributed as pre-compiled wheels across multiple platforms (macOS, Linux, Windows) and architectures. It includes type hints throughout, supports middleware customization and JSON serializer overrides, and can integrate with ASGI apps for testing. The trade-off is that it is not a pure Python solution—debugging HTTP internals requires understanding the Rust layer, and it does not support older Python versions or alternative implementations like PyPy or GraalPy. Use it for: - Building high-throughput microservices or API clients where request latency and concurrency matter. - Replacing slower pure-Python HTTP libraries in existing projects when performance becomes a bottleneck. - Writing integration tests with built-in mocking support or ASGI app connections. - Handling complex HTTP scenarios: streaming bodies, multipart forms, proxy chains, or automatic charset detection. - Projects requiring both sync and async HTTP clients in a single, type-safe library. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. A Rust-based HTTP client for Python with both synchronous and asynchronous APIs, offering high-performance request handling with connection pooling, streaming, and standard HTTP features like HTTPS, redirects, and authentication. Yes, if you need high-performance HTTP requests and can commit to Python 3.11+. The package is actively maintained, has no security vulnerabilities, zero runtime dependencies, and offers a mature API. Verify the license before use in restricted contexts. Not suitable if you require pure Python debugging, older Python versions, or alternative implementations. ## Install pip install pyreqwest uv add pyreqwest poetry add pyreqwest ## Installing pyreqwest Before you install: Medium install friction due to compiled wheels; requires Python 3.11 or later. Actively maintained with a recent release (2 days old) and 391 repository stars. No runtime dependencies to manage. License in practice: License status is unclear—no SPDX identifier or raw license text is available in the package metadata. Verify the actual license before use in commercial or restricted contexts. Quickstart: # pip install pyreqwest from pyreqwest.client import ClientBuilder async def example(): async with ClientBuilder().build() as client: response = await client.get("https://example.com").build().send() print(await response.json()) Requires Python 3.11 or later; no support for older versions or alternative Python implementations. Verify before relying: - Actual license identifier and terms—metadata shows 'unclear' treatment with no SPDX or raw license field populated. - Stability guarantees and API compatibility commitments—package is marked 'Beta' in development status. ## Package facts - License: not declared (unclear) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 190.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags rust http client python, async http requests, high performance http client, python http library, http client with connection pooling, rust-based http, fast http requests python, http/2 support python, rust-based, async-http, high-performance [View on SkillFed](https://skillfed.io/packages/pyreqwest) · [View on PyPI](https://pypi.org/project/pyreqwest/)