Skip to main content

rnet_client

Обёртка над библиотекой wreq-python для создания самого быстрого HTTP-клиента в Python с расширенными настройками: случайная эмуляция браузера, кастомные редиректы и оптимальные тайм-ауты. Возвращает готовый клиент с низкоуровневой эмуляцией, с настраиваемыми возможностями TLS, JA3/JA4 и HTTP/2, на базе wreq.

Установка

uv add rnet-client

Требуется wreq-python: uv add wreq

Быстрый старт

from rnet_client import get_rnet_client

# Создание клиента с настройками по умолчанию
client = get_rnet_client()

# Асинхронный запрос
async def main():
    response = await client.get("https://httpbin.org/get")
    print(await response.text())

API

get_rnet_client()

Фабрика для создания сконфигурированного wreq.Client.

Параметр Тип По умолчанию Описание
browser Browsers | list[str] | None None Семейство браузеров для эмуляции
max_redirects int 36 Максимальное количество редиректов
ignore_in_redirects list[str] | None None Подстроки URL для прерывания редиректов
connect_timeout int 15 Тайм-аут соединения (сек)
read_timeout int 20 Тайм-аут чтения (сек)
pool_idle_timeout int 90 Время простоя соединения в пуле (сек)
pool_max_idle_per_host int 15 Макс. простаивающих соединений на хост
headers dict[str, str] | None None Дополнительные заголовки
referer bool True Автоматический заголовок Referer
gzip bool True Поддержка gzip
brotli bool True Поддержка brotli
deflate bool True Поддержка deflate
zstd bool True Поддержка zstd

Browsers

Доступные семейства браузеров для эмуляции:

  • 'Chrome'
  • 'Edge'
  • 'Firefox'
  • 'SafariDesktop'
  • 'iOS'

Примеры

Эмуляция конкретного браузера

# Только Chrome
client = get_rnet_client(browser='Chrome')

# Chrome или Firefox
client = get_rnet_client(browser=['Chrome', 'Firefox'])

Кастомные редиректы

# Прерывать редиректы при переходе на определённые домены
client = get_rnet_client(
    max_redirects=10,
    ignore_in_redirects=['login.example.com', 'auth.']
)

Настройка тайм-аутов

client = get_rnet_client(
    connect_timeout=30,
    read_timeout=60,
    pool_idle_timeout=120
)

Дополнительные заголовки

client = get_rnet_client(
    headers={
        'X-Custom-Header': 'value',
        'Accept-Language': 'ru-RU,ru;q=0.9'
    }
)

Metadata

Release files for rnet-client 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rnet-client 0.0.4
File Size Uploaded Provenance Actions
rnet_client-0.0.4.tar.gz 9.2 kB Without provenance Details for rnet_client-0.0.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for rnet-client 0.0.4
File Interpreter ABI Platform Actions
rnet_client-0.0.4-py3-none-any.whl Python 3 none any Details for rnet_client-0.0.4-py3-none-any.whl

Total release size: 16.6 kB

Release files / rnet_client-0.0.4.tar.gz

Download URL rnet_client-0.0.4.tar.gz
Size 9.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5f956b2de43c62435e5c39981519a6e182dcfbb8b125b56a4444d6ee6502cacd
BLAKE2b-256 checksum
How to use checksums
d4e6302abcd7127ae3ce2b60cbe57be1332e515576ffb4ff5991f1cafd042c31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / rnet_client-0.0.4-py3-none-any.whl

Download URL rnet_client-0.0.4-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a4e9fa435519028d7a02b484e36d189c05d7b3d5446af9fa6ec0f49d34d9ee2f
BLAKE2b-256 checksum
How to use checksums
713740b20a3a99d0f137f636a802dee8e70d753f812e2eef55a900db326ec14e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Security for rnet-client 0.0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page