Proxy (HTTP, SOCKS) transports for httpx
Project description
httpx-socks
The httpx-socks
package provides proxy transports for httpx client.
SOCKS4(a), SOCKS5, HTTP (tunneling) proxy supported.
It uses python-socks for core proxy functionality.
Requirements
- Python >= 3.6
- httpx >= 0.13.3
- python-socks[asyncio,trio] >= 1.0.1
Installation
pip install httpx-socks
Usage
sync transport
import httpx
from httpx_socks import SyncProxyTransport
def fetch(url):
transport = SyncProxyTransport.from_url('socks5://user:password@127.0.0.1:1080')
with httpx.Client(transport=transport) as client:
res = client.get(url)
return res.text
async transport (both asyncio and trio supported)
import httpx
from httpx_socks import AsyncProxyTransport
async def fetch(url):
transport = AsyncProxyTransport.from_url('socks5://user:password@127.0.0.1:1080')
async with httpx.AsyncClient(transport=transport) as client:
res = await client.get(url)
return res.text
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
httpx-socks-0.2.9.tar.gz
(7.5 kB
view hashes)
Built Distribution
Close
Hashes for httpx_socks-0.2.9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | db61a97372240846ae1a0f035e858fcaed8a1b0a9b42b734199677fd0c735d8e |
|
MD5 | 90865e57c042850a7eda67a71767c57f |
|
BLAKE2b-256 | 71085e7f817c51322f8d7723523a2a2b7c44bacb0866765e424003e8ce29088c |