Skip to main content

wreq client wrapper

Project description

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'
    }
)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rnet_client-0.0.4.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rnet_client-0.0.4-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file rnet_client-0.0.4.tar.gz.

File metadata

  • Download URL: rnet_client-0.0.4.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rnet_client-0.0.4.tar.gz
Algorithm Hash digest
SHA256 5f956b2de43c62435e5c39981519a6e182dcfbb8b125b56a4444d6ee6502cacd
MD5 51c7333ff22d9dae58890fde97af7c6f
BLAKE2b-256 d4e6302abcd7127ae3ce2b60cbe57be1332e515576ffb4ff5991f1cafd042c31

See more details on using hashes here.

File details

Details for the file rnet_client-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: rnet_client-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 7.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rnet_client-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a4e9fa435519028d7a02b484e36d189c05d7b3d5446af9fa6ec0f49d34d9ee2f
MD5 419ec08568422b733036dbf11d3c582b
BLAKE2b-256 713740b20a3a99d0f137f636a802dee8e70d753f812e2eef55a900db326ec14e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page