Интеграции

Прокси в коде

Рабочие примеры для популярных HTTP-клиентов. Подставьте вместо USER, PASS, HOST и PORT значения из заказа или резидентскую строку из генератора.

Обновлено 16 октября 2026

HTTP и HTTPS#

curl -x http://USER:PASS@HOST:PORT https://api.ipify.org

SOCKS5#

На ISP и датацентре порт SOCKS5 равен порту HTTP плюс один. На резидентских используйте SOCKS5-порт, например 1080.

curl -x socks5h://USER:PASS@HOST:PORT https://api.ipify.org

Python#

requests с сессией

Сессия переиспользует соединения, поэтому на входе в аккаунт или оформлении заказа сайт видит тот же IP и то же TLS-рукопожатие.

Python
import requests

proxy = "http://USER:PASS@HOST:PORT"
s = requests.Session()
s.proxies = {"http": proxy, "https": proxy}

for url in urls:
    r = s.get(url, timeout=30)
    print(r.status_code, len(r.content))

httpx

Python
# pip install httpx            (SOCKS5: pip install "httpx[socks]")
import httpx

with httpx.Client(proxy="http://USER:PASS@HOST:PORT", timeout=30) as client:
    print(client.get("https://api.ipify.org?format=json").json())

aiohttp

Python
import asyncio
import aiohttp

PROXY = "http://USER:PASS@HOST:PORT"

async def main():
    async with aiohttp.ClientSession() as session:
        async with session.get("https://api.ipify.org?format=json", proxy=PROXY) as r:
            print(await r.json())

asyncio.run(main())

aiohttp сам по себе понимает только HTTP-прокси. Для SOCKS5 добавьте aiohttp-socks:

Python
# pip install aiohttp-socks
import asyncio
import aiohttp
from aiohttp_socks import ProxyConnector

async def main():
    connector = ProxyConnector.from_url("socks5://USER:PASS@HOST:PORT", rdns=True)
    async with aiohttp.ClientSession(connector=connector) as session:
        async with session.get("https://api.ipify.org?format=json") as r:
            print(await r.json())

asyncio.run(main())

Scrapy

Встроенный прокси-middleware Scrapy берёт прокси из meta и сам отправляет доступы из URL. С резидентской строкой ротации каждый запрос выходит с нового адреса.

Python
# spider.py
import scrapy

class IpSpider(scrapy.Spider):
    name = "ip"

    def start_requests(self):
        for _ in range(3):
            yield scrapy.Request(
                "https://api.ipify.org?format=json",
                meta={"proxy": "http://USER:PASS@HOST:PORT"},
                dont_filter=True,
            )

    def parse(self, response):
        yield response.json()

Node.js#

axios

У axios есть своя опция proxy, но HTTPS через неё туннелируется ненадёжно. Дайте ему агент, а собственное проксирование выключите:

JavaScript
// npm install axios https-proxy-agent
import axios from "axios";
import { HttpsProxyAgent } from "https-proxy-agent";

const agent = new HttpsProxyAgent("http://USER:PASS@HOST:PORT");

const { data } = await axios.get("https://api.ipify.org?format=json", {
  httpsAgent: agent,
  proxy: false, // let the agent do the proxying
});
console.log(data);

Таймауты и повторы#

  • Всегда задавайте таймаут. Для большинства сайтов подходит 30 секунд.
  • Повторяйте запрос при ошибках соединения, таймаутах и 502, 503, 504, с растущей паузой. 407 не повторяйте: неверные доступы сами не исправятся.
  • На резидентских повтор с новой фиксированной сессией попадает на новое устройство. См. сессии в коде.
  • Ограничьте число попыток. Бесконечный цикл повторов на заблокированный сайт только сжигает трафик.
Python
import time
import requests

def fetch(url: str, proxy: str, attempts: int = 3) -> requests.Response:
    for i in range(attempts):
        try:
            r = requests.get(url, proxies={"http": proxy, "https": proxy}, timeout=30)
            if r.status_code in (502, 503, 504):
                raise requests.HTTPError(r.status_code)
            return r
        except (requests.ConnectionError, requests.Timeout, requests.HTTPError):
            if i == attempts - 1:
                raise
            time.sleep(2 ** i)  # 1 s, 2 s, 4 s

Не нашли ответ?

Поддержка отвечает в чате на сайте круглосуточно. Быстрее всего обычно отвечают в Телеграм, а на тикет ответ придёт на почту.