Реферальная программа →
ГлавнаяГлоссарийHeadless-браузер
Глоссарий

Headless-браузер

Полноценный веб-браузер, работающий без графического интерфейса, управляемый кодом для загрузки, рендеринга и взаимодействия со страницами.

Headless-браузер - это полноценный браузер, обычно Chrome или Firefox, работающий без видимого окна и управляемый программно. Он загружает страницы, исполняет JavaScript и рендерит DOM ровно так, как это делал бы обычный браузер, но под управлением скрипта. Playwright, Puppeteer и Selenium - типичные инструменты для управления ими.

Headless-браузеры существуют, чтобы скрапить современные сайты, строящие контент на JavaScript. Простой HTTP-запрос возвращает исходный HTML, который для многих одностраничных приложений почти пустой - реальные данные подгружаются позже через JavaScript. Headless-браузер исполняет этот JavaScript, так что вы скрапите полностью отрендеренную страницу вместо пустой оболочки.

Компромисс - цена и обнаруживаемость. Рендеринг полной страницы использует гораздо больше CPU, памяти и трафика, чем простой HTTP-запрос, поэтому headless-скрапинг медленнее и дороже в масштабе. Headless-браузеры также несут отпечатки автоматизации (флаги navigator.webdriver, необычные WebGL-рендереры), которые антибот-системы специально ищут.

Используйте headless-браузер, когда цель действительно требует рендеринга JavaScript, и сочетайте его с резидентными прокси и укреплением отпечатка, чтобы он выглядел как браузер реального пользователя. Для статического HTML или доступных API простые HTTP-запросы драматически быстрее, и им стоит отдавать предпочтение.

Настоящий браузер без окна

Headless-браузер это обычный браузерный движок, работающий без видимого интерфейса и управляемый кодом через Playwright, Puppeteer или Selenium. Он выполняет JavaScript, отрисовывает страницы и держит куки ровно так же, как видимая версия.

Это делает его инструментом для сайтов, которые собирают содержимое в браузере, а не на сервере. HTTP-клиент, забирающий такую страницу, получает оболочку без данных.

Платить приходится трафиком и временем. Headless-браузер скачивает скрипты, стили, шрифты и картинки, пока ему не запретишь, поэтому страница, которая как HTML весила бы 80 КБ, превращается в несколько сотен килобайт, а на тарифицируемых прокси это бьёт напрямую.

Раньше headless-режим ещё и легко обнаруживался по очевидным признакам. Современные версии заметно ближе к видимому браузеру, но фреймворки автоматизации всё равно оставляют следы, которые ищут специализированные защиты.

Как запускать его через наши прокси

Прокси на контекст это та возможность, ради которой стоит выбирать инструмент, потому что она позволяет одному браузеру держать несколько личностей:

Playwright с прокси на каждый контекст

ctx = browser.new_context(
    proxy={
        "server": "http://proxy.sotaproxy.com:10000",
        "username": "login_c_US_s_7_ttl_1h",
        "password": "password",
    },
    locale="en-US", timezone_id="America/New_York",
)
  • Отсекайте картинки, медиа и шрифты через маршрутизацию запросов. На резидентке это сокращает счёт в несколько раз.
  • Держите липкую сессию на всё время жизни контекста. Ротация посреди страницы подгрузит половину ресурсов с другого адреса.
  • Приводите локаль и часовой пояс в соответствие со страной прокси, иначе адрес и браузер будут противоречить друг другу.
  • Для работы с аккаунтами берите антидетект-браузер, а не голую headless-автоматизацию: он добавляет изоляцию отпечатков и хранилища, которую иначе пришлось бы строить самому.

Заблуждения о headless

Для большинства скрапинга headless не нужен

Если данные лежат в HTML или в API, HTTP-клиент быстрее и намного дешевле.

Сам по себе он не прячет автоматизацию

Следы фреймворка остаются, и защиты ищут именно их.

Трафик несопоставим с curl

Отрисованная страница может весить в пять раз больше своего HTML.

Прокси не чинит обнаружение

Адрес и браузер это отдельные признаки, и проверяются оба.

Смотри на практике

Готов использовать headless-браузер?

SotaProxy даёт доступ к ротирующим резидентским, мобильным, дата-центр и ISP прокси. Без минимальных платежей.

Начать