Как настроить прокси: от логина до парсера

Настройка прокси в любом инструменте занимает несколько минут, если понимать, за что отвечает каждая часть логина. Здесь собраны инструкции по инструментам, решения частых ошибок и советы по защите токена.

1. Создайте аккаунт и сохраните токен доступа

На странице регистрации вы получаете токен доступа. Это пароль для входа и для подключения к прокси. Сервер не хранит токен, поэтому сохраните его в файл .txt.

2. Пополните баланс

Выберите сумму в блоке пополнения в кабинете и отправьте заявку. Пополнить можно от $30, сумма поступит на баланс после подтверждения оплаты.

3. Составьте имя пользователя

Страна, город и сессия в имени пользователя задают место и удержание IP. Выберите их в блоке данных подключения в кабинете, и имя составится само.

Примеры имени пользователя

Новый IP на запрос
user-country-us
Выбор города
user-country-us-city-new_york
Один IP
user-country-us-session-shop1
Мобильный IP
user-type-mobile-country-us

4. Проверьте подключение

Отправьте запрос через curl и посмотрите IP и страну в ответе.

Формат подключения

HTTP

http://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000

SOCKS5

socks5://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000

curl

curl -x http://gate.proxytoo.com:7000 -U "user-country-us:YOUR_TOKEN" https://ipinfo.io/json

5. Добавьте в свои инструменты

Укажите хост, имя пользователя и токен в Python, Node.js или в инструменте автоматизации браузера.

Примеры кода

Python (requests)

import requests

proxy = "http://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000"
res = requests.get("https://ipinfo.io/json",
                   proxies={"http": proxy, "https": proxy})
print(res.json())

Node.js (undici)

import { ProxyAgent, fetch } from "undici";

const agent = new ProxyAgent("http://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000");
const res = await fetch("https://ipinfo.io/json", { dispatcher: agent });
console.log(await res.json());

Puppeteer

const browser = await puppeteer.launch({
  args: ["--proxy-server=http://gate.proxytoo.com:7000"],
});
const page = await browser.newPage();
await page.authenticate({ username: "user-country-us", password: "YOUR_TOKEN" });
await page.goto("https://ipinfo.io/json");

Если подключение не работает

  • 407 Proxy Authentication Required

    Имя пользователя или токен не совпадают. Проверьте, что вставили их в точности и без лишних пробелов.

  • Превышено время ожидания

    Если вы выбрали город, попробуйте только страну. Проверьте также, не закрывает ли корпоративный файрвол порт 7000.

  • Сайт продолжает блокировать

    Увеличьте паузы между запросами и меняйте IP с каждым запросом. Для сайтов с сильной защитой подходят резидентные прокси.

Как устроен логин прокси?

Логин прокси это короткая строка настроек из частей, соединенных дефисами. Она начинается с user, дальше идут пары «имя и значение», которые задают точку выхода и время удержания IP. Разобравшись в этих частях, вы сможете собрать любую строку подключения вручную, не открывая кабинет.

После country указывается двухбуквенный код страны строчными буквами. user-country-us означает IP из США, а user-country-jp означает японский IP. После city указывается название города строчными буквами, пробелы заменяются подчеркиваниями, например user-country-us-city-new_york.

После session указывается имя сессии, которое вы придумываете сами. С логином user-country-jp-session-shop1 все запросы с этим именем сохраняют один и тот же IP до 120 минут. Добавьте type-mobile, например user-type-mobile-country-gb, чтобы выходить через мобильный IP.

В поле пароля всегда вводится ваш токен доступа, который начинается с pt_. Чтобы сменить страну или сессию, меняйте только логин, а токен оставляйте как есть.

  • user обозначает начало настроек.
  • country и двухбуквенный код выбирают страну.
  • city и название через подчеркивание выбирают город.
  • session и имя сохраняют один IP.
  • type-mobile выбирает мобильный IP.

HTTP или SOCKS5 прокси: что выбрать?

HTTP прокси это простой вариант по умолчанию для парсинга сайтов и работы в браузере, а SOCKS5 прокси подходят для не веб трафика или когда DNS нужно разрешать на стороне прокси. ProxyToo принимает оба протокола на одном шлюзе gate.proxytoo.com:7000. Логин и токен остаются теми же, меняется только схема в начале адреса.

HTTP прокси созданы для веб запросов, поэтому почти любая библиотека и любой браузер понимают их без дополнительной настройки. Сайты на HTTPS тоже работают, потому что прокси открывает для соединения зашифрованный туннель. Для веб инструментов вроде requests, Scrapy, Puppeteer и Playwright начинайте с формата HTTP.

SOCKS5 передает само соединение, поэтому может нести много видов трафика помимо веба. В Python адрес, начинающийся с socks5h, заставляет прокси разрешать имена хостов в стране выхода, и ваше местоположение остается согласованным. Браузеры на базе Chromium плохо поддерживают SOCKS5 с логином, поэтому для автоматизации браузера удобнее HTTP.

  • HTTP для парсинга и автоматизации браузера
  • SOCKS5 для программ с не веб трафиком
  • Адрес socks5h, чтобы DNS разрешался в стране прокси
  • Один и тот же логин и токен для обоих

Как добавить прокси в браузер или антидетект браузер?

В обычном браузере откройте расширение для прокси и введите четыре значения в отдельные поля: хост, порт, логин и токен. Выберите формат host:port:user:pass в разделе «Создать данные подключения» в кабинете, и все четыре значения появятся в одной строке, готовые к копированию по полям. Если при первой загрузке страницы появится окно авторизации, введите в нем логин и токен.

Антидетект браузер дает каждому профилю собственное окружение, поэтому главное правило: один логин на профиль. В поле прокси профиля выберите HTTP или SOCKS5, затем добавьте к логину часть session с разным именем сессии для каждого профиля. Так каждый профиль получает свой IP, и внутри профиля этот IP не меняется.

Настройте язык, часовой пояс и местоположение профиля под выбранную страну, чтобы страницы выглядели так же, как у местного посетителя. Для профиля, который долго ведет один аккаунт, ISP прокси или выделенные прокси дата-центра сохраняют один IP на весь срок. Заказать любые из них можно в разделе «Купить продукты» в кабинете, выбрав количество и срок.

  • Одно имя сессии на профиль
  • Язык и часовой пояс под страну IP
  • ISP прокси для долгоживущих профилей
  • Логин и токен в окне авторизации

Как использовать прокси в Python requests и Scrapy?

В Python соберите прокси в одну строку вида http://username:token@gate.proxytoo.com:7000 и передайте ее в настройку прокси библиотеки. В requests главное указать один и тот же адрес и в записи http, и в записи https. Если заполнить обе записи, HTTPS запросы тоже пойдут через прокси.

Задайте прокси один раз в объекте Session из requests, и все запросы этой сессии будут его использовать. Логин только со страной дает новый IP на каждый запрос, а логин с частью session подходит для связанных шагов, например входа в аккаунт. Для SOCKS5 установите дополнение SOCKS для requests и замените начало адреса на socks5h.

В Scrapy укажите адрес такого же вида в значении proxy в meta каждого запроса, и встроенный прокси middleware сам превратит логин и токен в заголовок авторизации. Чтобы применить одну настройку ко всем запросам, напишите небольшой downloader middleware, который подставляет значение proxy. Чтобы разделить трафик на сессии, пусть этот middleware присваивает каждой группе запросов свое имя сессии.

Настраивайте параллельность и темп через параметры CONCURRENT_REQUESTS и DOWNLOAD_DELAY. Начните с малых значений, убедитесь, что ответы стабильны, затем повышайте их постепенно, находя баланс между скоростью и успешностью. Резидентные прокси оплачиваются по трафику, поэтому отсев картинок и шрифтов помогает балансу прослужить дольше.

Как настроить прокси в Node.js, Puppeteer и Playwright?

В Node.js обычно создают прокси агент и передают его библиотеке для запросов. Для HTTP используйте пакет вроде https-proxy-agent или ProxyAgent из undici, а для SOCKS5 используйте socks-proxy-agent, передав адрес с логином и токеном. Создайте агент один раз и используйте его во всех запросах, чтобы соединения переиспользовались и работали быстро.

В Puppeteer передайте в аргументе запуска --proxy-server только адрес шлюза, а логин и токен отправьте отдельно через page.authenticate после открытия страницы. Такое разделение работает в Chrome надежнее всего. Чтобы сменить страну или сессию, проще всего запустить еще один браузер с новым логином.

В Playwright укажите server, username и password в параметре запуска proxy, и авторизация пройдет за один шаг. В поле password вводится ваш токен доступа. Можно также запустить один браузер и дать каждому контексту свой прокси: если связать с каждым контекстом свое имя сессии, один скрипт сможет работать с несколькими IP одновременно.

При автоматизации браузер загружает картинки, видео и шрифты на каждой странице, и трафика набирается много. Блокировка лишних ресурсов через перехват запросов снижает расходы на резидентные и мобильные прокси, которые оплачиваются за GB. Имя сессии удерживает IP, пока страница загружается, поэтому страницы отображаются корректно.

Ротация IP или постоянные сессии: что лучше для парсинга?

Для парсинга, где каждая страница читается отдельно, используйте новый IP на каждый запрос, а для связанных шагов, например входа в аккаунт или корзины, используйте сессию. Без части session IP меняется при каждом запросе, а с ней IP сохраняется под этим именем. Один токен работает в обоих режимах, так что режим можно выбирать для каждого этапа задачи.

Режим ротации подходит для задач, где страницы не связаны между собой: результаты поиска, списки товаров и таблицы цен. Запросы равномерно распределяются по множеству IP, поэтому для сайта они выглядят как обычный трафик от многих посетителей. Даже при большом обходе одного сайта паузы между запросами сохраняют стабильность.

В работе с сессиями главное давать отдельное имя сессии каждой единице работы. Если вы проверяете пять аккаунтов магазина, назовите их от shop1 до shop5, и у каждого аккаунта будет свой IP. Если делить работу на короткие цепочки, которые укладываются в окно сессии, один IP сохраняется на всю цепочку.

Если один IP нужен на целый месяц, лучше всего подойдут ISP прокси или выделенные прокси дата-центра, а для больших объемов по низкой цене за единицу хорошо подходят общие прокси дата-центра или IPv6 прокси. Для задач с большим трафиком, где смешанные страны не мешают, безлимитные резидентные прокси за $37.58 в день делают расходы легко предсказуемыми.

  • Новый IP на каждый запрос для независимых страниц
  • Постоянное имя сессии для входа и оформления заказа
  • Свое имя сессии для каждой единицы работы
  • ISP или выделенные прокси дата-центра для одного IP на весь месяц

Как проверить IP прокси и исправить ошибки подключения?

Быстрее всего отправить через прокси запрос на страницу, которая показывает ваш IP, и убедиться, что IP и страна совпадают со страной в логине. Выберите формат curl в разделе «Создать данные подключения» в кабинете, и вы получите готовую команду проверки, которую можно вставить в терминал. Если вы задали сессию, отправьте ту же команду два или три раза, чтобы убедиться, что IP сохраняется.

Ответ 407 означает, что прокси не принял ваши учетные данные, и обычно дело в одном символе логина или токена. Проверьте, что токен начинается с pt_, что при копировании не попали пробелы или переносы строк и что логин начинается с user. Если внутри адреса в одну строку оказались спецсимволы, их URL кодирование решает проблему.

Ответы вроде 403 или 429 приходят от сайта: это значит, что подключение к прокси сработало, а сайт следит за скоростью или шаблонами запросов. Увеличьте паузы между запросами, отправляйте заголовки как у браузера и переключитесь с сессии на новый IP для каждого запроса.

Тайм ауты часто возникают из за того, что офисная или учебная сеть блокирует порт шлюза, из за слишком узкой цели по городу или из за короткого тайм аута в коде. Попробуйте ту же команду из другой сети, уберите часть с городом и оставьте только страну, а также увеличьте тайм аут запроса. Проверьте и то, что на балансе остались средства, а для IP продуктов, что заказ в разделе «Мои заказы» имеет статус «Используется».

  • 407: проверьте логин и токен
  • 403 или 429: снизьте темп и меняйте IP
  • Тайм аут: проверьте сеть, город и тайм аут
  • Для проверки сессии запустите одну команду несколько раз

Как защитить токен доступа к прокси?

Токен доступа одновременно служит ID аккаунта и паролем прокси, поэтому любой, у кого он есть, может пользоваться прокси за счет вашего баланса. Сервер хранит только хеш токена, поэтому файл с токеном, который вы сохранили при регистрации, это единственный оригинал. Храните копии в двух местах и добавьте токен в менеджер паролей, чтобы он был в безопасности и всегда под рукой.

Не храните токен в коде, загружайте его из переменной окружения или отдельного файла конфигурации. Добавьте этот файл в .gitignore, чтобы он не попал в репозиторий, а на общем сервере ограничьте права доступа к файлу, чтобы читать его могли только вы. Так вы сможете делиться кодом, а токен останется на вашем компьютере.

Следите также за логами и скриншотами. Если при ошибке выводить полный адрес прокси, токен попадет прямо в лог, поэтому маскируйте часть с токеном при записи адреса в лог. Публикуя вопрос или скриншот, показывайте только логин и предварительно удаляйте токен.

  • Файл с токеном хранится в двух местах
  • Токен загружается из переменной окружения
  • Файл конфигурации не попадает в репозиторий
  • Токен скрыт в логах и на скриншотах

Ответственное использование

  • Собирайте открытую информацию и не входите в чужие аккаунты без разрешения.
  • Делайте паузы между запросами, чтобы не нагружать сайты.
  • Прокси нельзя использовать для спама, несанкционированного доступа и мошенничества.

Получите токен и подключитесь через IP нужной страны

Для регистрации нужен всего один токен. Пополните баланс от $30 и пользуйтесь прокси любого типа с одного баланса.

Получить токен и начать