Skip to main content

Настройка прокси в Apify

Apify — платформа для краулинга/автоматизации. Ниже — способы использования собственного прокси Mango в глобальных настройках и в коде (Puppeteer, Playwright, HTTP-запросы).
Параметры: Начало работы → Настройка прокси


Вариант A. Глобальные настройки (UI)

  1. Settings → Proxy (в аккаунте Apify).
  2. Добавьте собственный прокси-URL:
    • HTTP/HTTPS: http://username:[email protected]:2333
    • SOCKS5: socks5://username:[email protected]:2333
  3. Сохраните. Теперь акторы по умолчанию смогут использовать этот прокси (в зависимости от конфигурации конкретного раннера/краулера).

Вариант B. В коде актора/скрипта

Puppeteer

import puppeteer from 'puppeteer';

const browser = await puppeteer.launch({
args: ['--proxy-server=http://p2.mangoproxy.com:2333'],
});
const page = await browser.newPage();
// Если нужна авторизация:
await page.authenticate({ username: 'USER', password: 'PASS' });
await page.goto('https://api.ipify.org/?format=text');
console.log(await page.content());

Playwright

import { chromium } from 'playwright';

const browser = await chromium.launch({
proxy: { server: 'http://p2.mangoproxy.com:2333', username: 'USER', password: 'PASS' },
});
const page = await browser.newPage();
await page.goto('https://api.ipify.org/?format=text');
const ip = await page.textContent('body');
console.log(ip);

Cheerio/HTTP-клиенты

import fetch from 'node-fetch';
import { HttpsProxyAgent } from 'https-proxy-agent';

const agent = new HttpsProxyAgent('http://USER:[email protected]:2333');
const res = await fetch('https://api.ipify.org', { agent });
const ip = await res.text();
console.log(ip);

Apify SDK (ProxyConfiguration с кастомными URL)

import { ProxyConfiguration, PlaywrightCrawler } from 'crawlee';

const proxyConfiguration = new ProxyConfiguration({
proxyUrls: ['http://USER:[email protected]:2333'],
});

const crawler = new PlaywrightCrawler({
proxyConfiguration,
requestHandler: async ({ page, request }) => { /* ... */ },
});

await crawler.run(['https://example.com']);

Практические советы

  • Per-request ротация: генерируйте новый прокси-URL перед запуском запроса/страницы (если используете динамические прокси Mango).
  • Таймауты и ретраи: для тяжёлых сайтов увеличьте navigationTimeout, используйте retry и экспоненциальный backoff.
  • Headless-антидетект: при работе с кабинетом/аккаунтами рассмотрите интеграцию с антидетект-браузерами (см. раздел «Браузеры»), прокси передавайте через аргументы запуска/профиль.

Проверка

  • Делайте контрольный запрос на https://api.ipify.org перед основной логикой; логируйте IP.
  • Для Playwright/Puppeteer выводите IP в консоль, для Crawler — в лог каждого запроса.

См. также