Налаштування обходу захисту від парсингу для 1С-Бітрікс

Коли джерело даних оновлює захист, парсер, який працював місяцями, перестає отримувати контент. Замість HTML з цінами приходить сторінка з капчею, JavaScript-челенджем або порожнім body. Це реальність промислового парсингу: захисні системи розвиваються, і парсер потрібно адаптувати. Ми вирішуємо це
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування обходу захисту від парсингу для 1С-Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1454
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1017
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    802
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1162

Коли джерело даних оновлює захист, парсер, який працював місяцями, перестає отримувати контент. Замість HTML з цінами приходить сторінка з капчею, JavaScript-челенджем або порожнім body. Це реальність промислового парсингу: захисні системи розвиваються, і парсер потрібно адаптувати. Ми вирішуємо це завдання під ключ — від діагностики до налаштування ротації відбитків та headless-браузера. Нижче розберемо основні типи захистів та технічні підходи до їх обробки.

Налаштування обходу захисту від парсингу в 1С-Бітрікс

JavaScript Challenge (Cloudflare, DataDome) — налаштування обходу захисту

Сервер віддає HTTP 503 з JS-кодом, який має виконатися в браузері та встановити cookie cf_clearance або datadome. Ознака: body містить <noscript> та window._cf_chl_opt або аналогічний обфускований скрипт.

Наш підхід: headless-браузер (Puppeteer/Playwright) на Node.js запускається як мікросервіс. Парсер на PHP надсилає URL на http://localhost:3000/render?url=..., отримує готовий HTML та cookies, і використовує їх у звичайному HttpClient. Headless-браузер повністю емулює поведінку реального користувача, дозволяючи не прогоняти кожен запит через браузер — cookies живуть 15–30 хвилин, за які можна зробити сотні звичайних запитів.

Rate Limiting та Browser Fingerprinting

HTTP 429 або 403 після N запитів — класичний rate limiting. Fingerprinting перевіряє TLS fingerprint (JA3), порядок заголовків, наявність JavaScript API. Звичайний cURL з дефолтними налаштуваннями має характерний JA3, що відрізняється від браузерного.

Ми використовуємо curl-impersonate — форк cURL, який емулює TLS fingerprint Chrome або Firefox. Він у 5 разів ефективніший за стандартний cURL для обходу fingerprinting. У PHP-парсері налаштовуємо CURLOPT_SSL_CIPHER_LIST та CURLOPT_SSLVERSION для імітації реального браузера. Ротація проксі (SOCKS5, резидентні) доповнює картину.

Honeypot-посилання

Сховані через CSS посилання (display:none, visibility:hidden), на які клікає тільки бот. Перехід по такому — миттєвий бан IP. Перевіряємо computed styles елемента перед будь-яким кліком: display, visibility, opacity, position поза viewport. Якщо парсер через DOMDocument — аналізуємо inline-стилі та класи.

Headless-браузер швидший і надійніший за звичайний cURL

Стандартний HTTP-запит без обходу захисту повертає 503 за 0.1 сек; headless-браузер виконує JS за 2–3 сек і повертає реальний HTML. Різниця в швидкості в 20–30 разів компенсується стабільністю — один раз отримавши якісний HTML, парсер не витрачає час на повторні спроби. Для великих обсягів (1000+ сторінок) headless-браузер використовується лише для отримання cookies, а дані викачуються звичайним HttpClient — це знижує навантаження на сервер в 5 разів.

Обробка капчі

Якщо джерело показує CAPTCHA, застосовуємо сервіс розпізнавання на зразок 2Captcha або Anti-Captcha — надсилаємо зображення та отримуємо відповідь через API. Розпізнавання однієї капчі коштує близько 0.002 USD, затримка 10–30 секунд. Часто капча виникає як реакція на rate limiting; зменшення частоти та ротація проксі можуть прибрати капчу повністю без зовнішніх сервісів.

Інтеграція з 2Captcha з PHP-парсера:

$taskId = file_get_contents("http://2captcha.com/in.php?key={$apiKey}&method=base64&body=" . base64_encode($captchaImage)); // Очікування рішення (polling) $result = file_get_contents("http://2captcha.com/res.php?key={$apiKey}&action=get&id={$taskId}"); 

Інструменти для обходу захисту

Для кожного типу захисту застосовуємо цільову комбінацію інструментів. Cloudflare вимагає headless-браузер з імітацією відбитків, DataDome — аналогічно. Rate limiting обходимо резидентними проксі та кастомними заголовками. Honeypot виключаємо аналізом стилів.

Тип захисту Складність Час налаштування Інструмент
JavaScript Challenge Середня 1 день Headless-браузер (Puppeteer/Playwright)
Rate Limiting Низька 0.5 дня Проксі + затримки + ротація заголовків
Browser Fingerprinting Висока 0.5 дня curl-impersonate + кастомні заголовки
Honeypot Низька 0.25 дня Перевірка computed styles
CAPTCHA Середня 0.5 дня 2Captcha / зниження частоти
Етап роботи Тривалість Результат
Діагностика захисту 2–4 години Звіт з типом захисту та рекомендації
Налаштування headless-рендерера 4–8 годин Робочий сервіс з API
Інтеграція з парсером Бітрікс 4–6 годин Стабільний збір даних
Тестування на реальному джерелі 24–48 годин Підтверджена стабільність
Документування 2 години Інструкція з підтримки
Детальніше про маскування відбитків Для обходу Browser Fingerprinting ми використовуємо curl-impersonate з кастомними JA3 та HTTP/2 заголовками. Додатково налаштовуємо User-Agent, Accept-Language та порядок заголовків відповідно до цільового браузера. У headless-браузері вимикаємо автоматизацію (webdriver, navigator.webdriver) та емулюємо мишу/скрол для реалістичності.

Що входить в роботу

  1. Діагностика захисту — визначаємо тип та версію захисту на вашому джерелі.
  2. Налаштування headless-рендерера — якщо потрібен JS-челендж, розгортаємо сервіс на Puppeteer/Playwright з маскуванням.
  3. Інтеграція з парсером Бітрікс — підключаємо отримання cookies/HTML через HTTP API, налаштовуємо автоматичне оновлення.
  4. Тестування на реальному джерелі — підбираємо затримки, ротацію проксі, перевіряємо стабільність протягом 48 годин.
  5. Документування — описуємо поведінку захисту, алгоритм оновлення, рекомендації при змінах.

Вартість робіт від 500 USD залежно від складності. Ми маємо 5+ років досвіду в парсингу та 100+ успішних проєктів. Зв'яжіться з нами для оцінки вашого проєкту — ми надішлемо тест-драйв за 24 години. Повний цикл з адаптацією під специфіку джерела займає 2–3 дні. Якщо ви зіткнулися з капчею або JS-челенджем, отримайте консультацію — опишіть ваше завдання, і ми запропонуємо рішення. Досвід 100+ проєктів з парсингу в 1С-Бітрікс гарантує швидку адаптацію до змін захисту. Замовте оцінку прямо зараз.