Скрейпинг страниц оформления заказа для анализа отказов
Как извлекать данные со страниц checkout для оптимизации конверсии: поля форм, сообщения об ошибках, итоговые суммы. js_actions, мониторинг, AI vs CSS-селекторы.
Команда InfraProxy
20 февраля 2026 г.
Проблема: вы не видите трения checkout без данных страницы
Аналитика интернет-магазинов показывает, что корзина брошена или на каком этапе оформления пользователь ушёл. Но без доступа к содержимому страницы checkout нельзя понять, почему это произошло: какие поля формы вызывают ошибки валидации, какие сообщения видит пользователь, как меняется итоговая сумма при применении скидок или доставки.
Для оптимизации конверсии нужны страничные данные:
- Поля формы — какие поля присутствуют, обязательны ли они, есть ли подсказки
- Сообщения об ошибках — текст при неверном вводе, при отказе платежа
- Итоговые суммы — базовая цена, скидки, доставка, налоги, итог
- Блокирующие элементы — предупреждения о недоступности доставки, ограничения по региону
Скриншоты и ручная проверка не масштабируются. Автоматизированный сбор через скрейпинг даёт возможность сравнивать checkout разных магазинов, отслеживать изменения и строить A/B-тесты на основе фактов.
Почему для checkout нужен JS-рендеринг, TLS и прокси
Страницы оформления заказа — одни из самых защищённых в e-commerce:
- JavaScript-зависимость — формы, калькуляторы доставки, валидация полей работают целиком на клиенте. Обычный HTTP-запрос возвращает пустой каркас.
- TLS-отпечатки — антибот-системы проверяют соответствие User-Agent и TLS. Несоответствие ведёт к блокировке или CAPTCHA.
- Rate limiting и блокировки — агрессивные запросы с одного IP быстро приводят к 403 или CAPTCHA. Нужна ротация прокси и разумная частота.
- Геозависимость — цены и варианты доставки зависят от региона. Для корректных данных нужны прокси из целевой страны.
API для скрейпинга с поддержкой use_js_render, резидентными прокси и браузерными TLS-профилями решает эти задачи. Вы передаёте URL страницы checkout и правила извлечения — получаете структурированный JSON.
Пошаговое извлечение полей, ошибок и сумм
Базовые extract_rules
{
"url": "https://example.com/checkout",
"use_js_render": true,
"use_residential": true,
"extract_rules": {
"form_fields": {
"selector": "form input, form select",
"type": "list",
"fields": {
"name": "@name",
"type": "@type",
"placeholder": "@placeholder",
"required": "@required"
}
},
"error_messages": {
"selector": ".error-message, .validation-error, [role=alert]",
"type": "list",
"fields": {
"text": ":self"
}
},
"subtotal": ".cart-subtotal, .order-subtotal",
"shipping": ".shipping-cost, .delivery-price",
"tax": ".tax-amount",
"total": ".order-total, .grand-total"
}
}
Селекторы подбираются под конкретный сайт. Синтаксис @name, @type извлекает атрибуты элементов.
js_actions для имитации ввода и триггера валидации
Часто ошибки валидации появляются только после ввода данных и отправки формы. Для их извлечения используйте js_actions — последовательность действий в браузерной среде:
{
"url": "https://example.com/checkout",
"use_js_render": true,
"js_actions": [
{"action": "type", "selector": "#email", "text": "test@example.com"},
{"action": "type", "selector": "#phone", "text": "123"},
{"action": "click", "selector": "button[type=submit]"},
{"action": "wait_for", "selector": ".error-message", "timeout": 3000}
],
"extract_rules": {
"validation_errors": {
"selector": ".error-message, .field-error",
"type": "list",
"fields": {
"field": "@data-field",
"message": ":self"
}
}
}
}
Сценарий: заполнить поля (в т.ч. с заведомо неверными данными), нажать «Оформить», дождаться появления сообщений об ошибках, извлечь их по селектору. Так можно автоматически собирать полный набор валидационных сообщений для анализа UX.
Мониторинг: пайплайн с batch-задачами
Для регулярного мониторинга checkout нескольких магазинов настройте пайплайн:
- Список URL — страницы checkout целевых интернет-магазинов (своих или конкурентов)
- Batch-запрос — отправка массива URL в API с одинаковыми
extract_rules - Расписание — запуск раз в день/неделю через cron, n8n или Airflow
- Хранение и сравнение — запись результатов в БД или таблицу, сравнение с предыдущими версиями
- Алерты — уведомление при появлении новых полей, изменении текста ошибок или структуры формы
При изменении вёрстки селекторы могут перестать срабатывать. Настройте проверку: если extract пустой или неполный — алерт разработчику для обновления правил.
AI-экстракция vs CSS-селекторы
CSS-селекторы (extract_rules) — быстры, дёшевы, предсказуемы. Требуют стабильной структуры DOM. При редизайне checkout селекторы ломаются, нужна ручная правка. Подходят для мониторинга фиксированного набора магазинов с известной вёрсткой.
AI-экстракция (extract_schema / extract_prompt) — вы описываете целевую структуру (поля формы, ошибки, суммы), модель извлекает данные без привязки к конкретным классам. Устойчивее к изменениям, удобнее для разнородных сайтов. Минусы: выше стоимость и латентность.
Рекомендация: для однотипных checkout (например, один и тот же движок магазина) — extract_rules. Для агрегации данных с десятков разных платформ — рассмотрите AI-экстракцию.
Важные нюансы
Конфиденциальность и тестовые данные
При скрейпинге checkout используйте только тестовые email, телефоны и адреса. Не передавайте реальные персональные данные. Многие магазины имеют тестовый режим или демо-страницы — предпочтительно работать с ними.
session_id для многошагового checkout
Если checkout состоит из нескольких шагов (корзина → доставка → оплата), передавайте один и тот же session_id во всех запросах. API будет направлять трафик через один IP и сохранять cookies — состояние корзины и прогресс не потеряются.
Таймауты
Страницы checkout с тяжёлыми калькуляторами доставки могут загружаться 15–30 секунд. Увеличьте timeout до 45–60 секунд. Для js_actions с ожиданием ошибок валидации достаточно 3–5 секунд.
Резюме
- Без страничных данных checkout нельзя понять причины отказов от оформления заказа
- Извлекайте поля форм, сообщения об ошибках и итоговые суммы через
extract_rules - Используйте
js_actionsдля имитации ввода и триггера валидации - Настройте мониторинг с batch-задачами и алертами при изменении структуры
- Выбирайте CSS-селекторы для стабильных сайтов, AI-экстракцию — для разнородных источников
- Учитывайте: JS-рендеринг, резидентные прокси, TLS-отпечатки,
session_idдля многошаговых checkout
InfraProxy Scraper API поддерживает js_actions, резидентные прокси и извлечение данных со страниц checkout для анализа конверсии и отказов корзины. Узнайте условия.
Нужны надёжные прокси для вашего проекта?
InfraProxy предоставляет серверные и резидентные прокси для российского бизнеса. Договор, постоплата, техподдержка.
Читайте также
Настройка прокси для мониторинга цен конкурентов
Пошаговое руководство по настройке прокси для мониторинга цен: ротация IP, geo-targeting, sticky-сессии, обход антибот-защит. Код на Python и bash.
РуководстваКак настроить прокси для RAG-пайплайна
Практическое руководство по настройке прокси для RAG-пайплайна: архитектура, код на Python, sticky-сессии, расписание обходов. InfraProxy, SOCKS5, 100 000+ IP.
РуководстваNo-code веб-скрейпинг: извлечение данных без программирования
Как настроить сбор данных в 2026 году без написания кода: API для скрейпинга, extract_rules, автоматизация через n8n и Make.com, батчевая обработка 100+ страниц.