Rnet is a high-performance Python HTTP client built with Rust bindings, specializing in advanced TLS fingerprinting. It accurately emulates the TLS and HTTP/2 signatures of various popular browsers like Chrome, Firefox, Safari, Opera, and OkHttp, enabling it to bypass sophisticated anti-bot detection systems. Rnet provides both asynchronous and synchronous client interfaces and is designed for speed and reliability in web scraping, API testing, and automation tasks. The current stable version is 2.4.2, with active development on 3.x release candidates, indicating a continuous and rapid release cadence.
pip install rnetVerified import paths — ran on the pinned version, not inferred.
This asynchronous example demonstrates how to create a client, specify a browser to impersonate for TLS/HTTP2 fingerprinting, and make a basic GET request. It then prints the HTTP status code and the response body. The `Impersonate` enum is used to select the desired browser profile.
Update `from rnet import Impersonate` to `from rnet import Emulation` and change usage from `Impersonate.BrowserVersion` to `Emulation.BrowserVersion`.
For production systems, consider pinning to a `2.x` version until `3.0.0` is officially stable, or thoroughly test `3.x` RCs in your environment.
Prefer installing `rnet` via `pip` to utilize pre-built wheels. If building from source is necessary, refer to the official GitHub repository for detailed instructions on setting up the Rust and BoringSSL build environments.
Run `pip install rnet` in your terminal to install the library.
Install Rust by following the instructions on the official Rust website (rustup.rs) or via your system's package manager, then try `pip install rnet` again.
Provide the URL when calling the request method, e.g., `client.get("https://example.com")`.Ensure you `await` the asynchronous client calls, e.g., `response = await client.get("https://example.com")`.No dependency data recorded yet.