Як налаштувати проксі: від імені користувача до парсера

Коли ви знаєте, що означає кожна частина імені користувача, налаштування проксі в будь-якому інструменті займає кілька хвилин. На цій сторінці: налаштування для кожного інструмента, виправлення помилок і захист токена.

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 вкажіть адресу такого самого вигляду в значенні meta proxy кожного запиту, і вбудований проксі-middleware сам перетворить ім'я користувача і токен на заголовок авторизації. Щоб застосувати одне налаштування до всіх запитів, напишіть невеликий downloader middleware, що заповнює значення проксі. Щоб розділити трафік на сесії, нехай цей 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, і авторизація відбудеться за один крок. У поле пароля вводиться ваш токен доступу. Можна також запустити один браузер і дати кожному контексту власний проксі, тож поєднання одного імені сесії з кожним контекстом дає одному скрипту змогу працювати з кількома IP паралельно.

Автоматизація браузера завантажує зображення, відео і шрифти на кожній сторінці, і це дає багато трафіку. Блокування непотрібних ресурсів через перехоплення запитів знижує витрати на резидентні та мобільні проксі, які оплачуються за GB. Ім'я сесії тримає 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 для кожного запиту.

Тайм-аути часто виникають, коли офісна чи навчальна мережа блокує порт шлюзу, коли обрано вузьку ціль за містом або коли в коді короткий тайм-аут. Спробуйте ту саму команду з іншої мережі, приберіть частину city і цільтеся лише на країну, а також дайте запиту довший тайм-аут. Також перевірте, що на балансі є кошти, а для продуктів з IP, що замовлення в розділі замовлень має статус використовується.

  • 407: перевірте ім'я користувача і токен
  • 403 або 429: сповільніться і змінюйте IP
  • Тайм-аут: перевірте мережу, місто і тайм-аут
  • Запустіть ту саму команду кілька разів, щоб перевірити сесію

Як захистити токен доступу до проксі?

Ваш токен доступу є водночас ідентифікатором акаунта і паролем проксі, тому будь-хто, хто його має, може користуватися проксі за ваш баланс. Сервер зберігає лише хеш токена, тож файл із токеном, збережений під час реєстрації, єдиний оригінал. Тримайте копії у двох місцях і додайте токен до менеджера паролів, щоб він був у безпеці й під рукою.

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

Стежте також за журналами і знімками екрана. Якщо під час помилки виводити повну адресу проксі, токен потрапить прямо в журнал, тому маскуйте частину з токеном щоразу, коли записуєте адресу. Коли публікуєте питання чи знімок екрана, показуйте лише ім'я користувача, а токен попередньо прибирайте.

  • Файл токена збережено у двох місцях
  • Токен завантажується зі змінної середовища
  • Файл конфігурації не потрапляє до репозиторію
  • Токен замасковано в журналах і на знімках екрана

Відповідальне використання

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

Отримайте токен і підключіться через IP потрібної країни

Для реєстрації потрібен лише один токен. Поповніть баланс від $30 і користуйтеся проксі будь-якого типу з одного балансу.

Отримати токен і почати