ГРАН-ПРІ ВІД ДОДАТКУ CYBERYOZH.

ГРАН-ПРІ ВІД ДОДАТКУ CYBERYOZH.

Виграй Apple MacBook, 2000$, iPad та море інших призів!

Як налаштувати мобільні проксі для Puppeteer

Puppeteer — це фреймворк для веб-автоматизації, спеціально розроблений для браузерів на базі Chromium, який в першу чергу працює як бібліотека JavaScript/Node.js. Він найкраще підходить для точної низькорівневої автоматизації і є незамінним інструментом для управління кількома акаунтами та оптимізації веб-бізнесу, де потрібно регулярно та швидко виконувати численні дії.

ℹ️

Puppeteer відмінно справляється з детальним контролем браузера, що робить інтеграцію проксі з Puppeteer основою для надійної автоматизації у великих масштабах.  

Вибір проксі для Puppeteer: мобільні проксі CyberYozh

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

CyberYozh mobile proxies

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

📱

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

Інші варіанти: резидентські проксі та проксі датацентру

Хоча мобільні проксі пропонують найкраще рішення для більшості робочих процесів Puppeteer з мінімальним ризиком обмежень, інші типи проксі мають власні випадки використання як проксі-сервер для Puppeteer:

  • Ротаційні резидентські проксі є стандартним вибором для більшості завдань зі збору даних, з великим пулом IP-адрес у понад 100 країнах. У Puppeteer використовуйте їх для масового скрейпінгу, що вимагає ротації IP для кожного запиту. Налаштуйте суфікс -res-any у вашому імені користувача, щоб провайдер автоматично керував ротацією проксі Puppeteer.

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

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

ℹ️

Порівняйте резидентські та мобільні проксі у спеціалізованій статті CyberYozh. Виберіть той варіант, який найкраще підходить для вас.

Підготовка до роботи з проксі Puppeteer

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

⚙️

Безголовий браузер — це екземпляр Chromium, який обробляє веб-сторінки та виконує JavaScript без відображення видимого графічного інтерфейсу, значно знижуючи навантаження на ресурси. За замовчуванням Puppeteer використовує безголовий режим (headless: true). Передайте headless: false щоб запустити видиму сесію браузера для налагодження. Детальніше читайте в документації API Puppeteer.

Створіть обліковий запис CyberYozh

Зареєструйтеся в CyberYozh, перейдіть до Мої проксіі придбайте тип проксі для вашого завдання: мобільні проксі для автоматизації та роботи з соціальними мережами або ротаційні резидентські для скрейпінгу. 

CyberYozh dashboard

Відкрийте картку свого проксі, натисніть Згенерувати облікові дані, оберіть режим ротації (Випадковий IP, Коротка сесія або Довга сесія) і збережіть хост, порт, ім'я користувача та пароль.

Налаштуйте Puppeteer на вашому ПК

Puppeteer потребує Node.js (v18+) та менеджер пакетів (наприклад, npm або yarn). Ініціалізуйте ваш проєкт та встановіть бібліотеку:

bash
# Initialize Node.js project
npm init -y

# Install Puppeteer (includes bundled Chromium)
npm install puppeteer
bash
# Alternatively, with Yarn:
yarn add puppeteer

Використовуйте Puppeteer у вашому JavaScript-коді

Для робочих процесів Puppeteer з проксі існують два варіанти пакетів:

⚙️

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

⚙️

puppeteer-core — полегшена версія без вбудованого браузера. Використовуйте її, коли ви самостійно керуєте шляхом до бінарного файлу браузера (наприклад, конкретна інсталяція Chrome або хмарне середовище). Потребує явного вказування executablePath.

javascript
// puppeteer (full, with bundled Chromium):
const puppeteer = require('puppeteer');

// puppeteer-core (no bundled browser):
const puppeteer = require('puppeteer-core');
// Must also pass: executablePath: '/path/to/chrome' 

Запуск робочих процесів автоматизації з CyberYozh

Тепер ви можете продовжити роботу над вашим проєктом Puppeteer. Почніть зі структури проєкту, додайте облікові дані проксі Puppeteer до середовища, а потім імпортуйте Puppeteer до ваших Node.js скриптів.

⚙️

Використовуйте прапорець --proxy-server як аргумент запуску Chromium, який направляє весь мережевий трафік на рівні браузера через вказану адресу та порт проксі. Він передається всередині масиву args функції puppeteer.launch().

Створіть структуру вашого проєкту

Організуйте папку проєкту, відокремивши облікові дані, скрипти, конфігурацію та вихідні дані з самого початку:

  1. .env файл для облікових даних проксі (додайте до .gitignore)

  2. .gitignore щоб вказати, що не буде передано через Git, тобто облікові дані проксі

  3. index.js для основного скрипта Puppeteer

  4. config/browser.js для параметрів запуску браузера, в окремій папці

  5. output/ папка для зібраних даних (JSON/CSV) 

Призначте проксі у файлі .env 

Додайте свої облікові дані CyberYozh як змінні середовища. Ніколи не вказуйте їх безпосередньо у вихідних файлах, щоб запобігти витоку облікових даних до системи контролю версій.

plaintext
PROXY_HOST=your_proxy_ip
PROXY_PORT=your_proxy_port
PROXY_USER=your_username
PROXY_PASS=your_password

Імпортуйте та налаштуйте Puppeteer

Встановіть dotenv для завантаження змінних .env:

bash
npm install dotenv

Потім налаштуйте параметри проксі-сервера Puppeteer:

javascript
// index.js

require('dotenv').config();

const puppeteer = require('puppeteer'); // or puppeteer-core
const PROXY = `${process.env.PROXY_HOST}:${process.env.PROXY_PORT}`

Створіть сесію перегляду Puppeteer

Визначте сутність браузера з аргументом HTTP-проксі Puppeteer сервера, потім автентифікуйте сторінку. За замовчуванням сесія є безголовою:

javascript
(async () => {
  const browser = await puppeteer.launch({
    headless: true, // false for debugging
    args: [`--proxy-server=http://${PROXY}`]
  });

  const page = await browser.newPage();

  // Authenticate with CyberYozh credentials
  await page.authenticate({
    username: process.env.PROXY_USER,
    password: process.env.PROXY_PASS
  });

 // Access the target site and show its content
  await page.goto('https://httpbin.org/ip');
  const content = await page.content();
  console.log(content);

 // Perform the automation or scraping operations using JS commands as needed

 // Close the session
  await browser.close();
})(); 
💬

Як зазначено в найпопулярнішій темі Stack Overflow про використання проксі в Puppeteer, прапорець --proxy-server має бути переданий під час запуску браузера: його не можна змінити для окремої сторінки після запуску.

Розгорніть свій код та відстежуйте процес

Запустіть свій скрипт автоматизації з кореневої папки проєкту та перевірте, чи працює ротація IP:

bash
node index.js

Для ротації проксі Puppeteer між кількома сесіями підтримуйте пул проксі та перепризначайте проксі, перезапускаючи екземпляри браузера. 

💡

Використовуйте ключ API CyberYozh з IP Checker для автоматизації ротації та перевірки якості кожної вхідної IP-адреси перед використанням, мінімізуючи ризик обмежень під час масових мультиакаунтних операцій. 

📚 Читайте більше на CyberYozh

Підсумок: ефективне використання проксі Puppeteer

Інтеграція Puppeteer з мобільними проксі CyberYozh забезпечує найнадійнішу основу для веб-автоматизації. Вона поєднує контроль браузера через Node.js з високодовіреними мобільними IP-адресами та ротацією через API для підтримки багатоакаунтних і бізнес-автоматизаційних процесів у масштабі без спрацювання обмежень платформ.

Поширені питання про проксі для Puppeteer

Що таке проксі для Puppeteer і навіщо він потрібен?

Проксі для Puppeteer спрямовує трафік вашого безголового браузера через зовнішню IP-адресу, маскуючи ваше походження. Це запобігає блокуванню IP, дозволяє геотаргетинг і робить автоматизовані сесії схожими на органічну активність користувачів.

Як використовувати проксі в Puppeteer?

Передайте прапорець --proxy-server=host:port всередині масиву args у puppeteer.launch(), потім викличте page.authenticate({ username, password }) для приватних проксі-серверів. Для базових налаштувань додаткова бібліотека не потрібна.

Яка різниця між puppeteer і puppeteer-core?

puppeteer містить сумісний бінарний файл Chromium і готовий до використання після npm install. puppeteer-core — це полегшена версія без браузера; ви повинні вказати executablePath до наявної інсталяції Chrome або Chromium.

Чи підтримує Puppeteer проксі SOCKS5?

Так. Передайте --proxy-server=socks5://host:port у масиві args. Проксі SOCKS5 підтримують повне тунелювання на рівні TCP, що включає не-HTTP трафік, який HTTP-проксі не можуть передавати.

Як працює ротація проксі в Puppeteer?

З ротаційними проксі CyberYozh ротація вбудована в інфраструктуру проксі: кожне нове з'єднання або сесія використовує свіжу IP-адресу. Для ротації на рівні браузера в Puppeteer перезапустіть новий екземпляр браузера через puppeteer.launch() для кожного проксі у вашому пулі.

Чи можу я встановити різні проксі для кожної сторінки в Puppeteer?

Не нативно на рівні сторінки: прапорець --proxy-server застосовується глобально до процесу браузера. Для проксі на рівні сесії запустіть окремий екземпляр браузера для кожного проксі або використовуйте npm-модуль puppeteer-page-proxy для перехоплення на рівні сторінки.

Який тип проксі CyberYozh слід використовувати для автоматизації соціальних мереж у Puppeteer?

Мобільні проксі — правильний вибір: вони імітують справжній трафік операторів зв'язку та мають найвищий рівень довіри на платформах як Instagram, TikTok і X. Поєднуйте з антидетект-браузерами для повної ізоляції цифрових відбитків.

Як запобігти витоку IP у Puppeteer?

Вимкніть WebRTC, щоб запобігти трансляції вашої справжньої IP-адреси: передайте --disable-webrtc або перевизначте RTCPeerConnection через page.evaluateOnNewDocument(). Також переконайтеся, що DNS-запити маршрутизуються через проксі, а не вирішуються локально.

Як перевірити, що проксі працює в Puppeteer?

Перейдіть на https://httpbin.org/ip або https://app.cyberyozh.com/checkers/ip-address/ у вашій сесії Puppeteer. Повернута IP-адреса має збігатися з адресою вашого проксі. Якщо все ще відображається ваша початкова IP-адреса, перевірте, що page.authenticate() було викликано перед page.goto().

Що робити, якщо мою автоматизацію Puppeteer все одно блокують?

Перевірте, що ваші IP-адреси мають низький показник шахрайства за допомогою CyberYozh IP Checker, зменшіть інтервали між запитами та рандомізуйте рядки user-agent і розміри вікна перегляду. Для платформ з високим рівнем безпеки поєднуйте мобільні проксі CyberYozh з антидетект-браузером.

Чи працює Puppeteer з HTTP і HTTPS проксі?

Так. Прапорець --proxy-server підтримує як http:// , так і https:// схеми, і Puppeteer автоматично тунелюватиме HTTPS-трафік через CONNECT-тунелювання через проксі.