Camoufox - антидетект-браузер
Camoufox - open source антидетект-браузер на базе Firefox, сделанный под web scraping и AI agents.
Это не полноценный обзор, а короткая заметка-закладка: что за проект, зачем он может быть полезен и куда смотреть дальше.
Ссылка
- GitHub: daijro/camoufox
- Документация: camoufox.com
Что это
Camoufox описывает себя как Firefox-форк для scraping и AI agents. Идея в том, чтобы запускать автоматизацию браузера так, чтобы она меньше выделялась на фоне обычного пользовательского трафика.
Основные акценты проекта:
- headless-браузер для запуска в локальной среде или облаке;
- совместимость с Playwright через Python API;
- автоматическая подмена и ротация browser fingerprint;
- маскировка признаков автоматизации от JavaScript-проверок;
- генерация “свежей личности” браузера для каждого запуска.
Почему мне интересно
Проект может быть полезен там, где обычный headless Chromium/Firefox слишком быстро палится:
- web scraping;
- SEO research;
- автоматизация браузерных задач;
- AI agents, которым нужен браузер;
- тестирование поведения сайтов с разными fingerprint-настройками.
Важно: это инструмент двойного назначения. Для своих задач использовать стоит аккуратно: не ломать правила сайтов, не обходить доступы и не делать то, что потом придется объяснять хостеру, клиенту или юристам.
Ключевые возможности
По README проекта, Camoufox умеет подменять много свойств окружения:
navigator-поля: устройство, ОС, браузер, железо, locale;- размеры экрана, viewport и window;
- timezone, geolocation, locale и
Intl; - WebRTC IP на уровне протокола;
- WebGL, AudioContext, media devices;
- user-agent и network headers так, чтобы они совпадали с fingerprint.
Отдельно упоминаются stealth-патчи: исправление navigator.webdriver, маскировка headless-признаков Firefox, изоляция JavaScript автоматизации и более “человеческое” движение курсора.
Использование с Python
Проект старается быть совместимым с привычным Playwright-кодом. В README пример выглядит примерно так:
from camoufox.sync_api import Camoufox
with Camoufox() as browser:
page = browser.new_page()
page.goto("https://example.com")
Есть и async-вариант:
from camoufox.async_api import AsyncCamoufox
async with AsyncCamoufox() as browser:
page = await browser.new_page()
await page.goto("https://example.com")
Важная пометка по репозиторию
В README есть важное уточнение: актуальная документация находится на camoufox.com, а активная разработка браузерной части идет в связанных репозиториях CloverLabsAI/camoufox и VulpineOS/VulpineOS.
При этом daijro/camoufox указан как master copy для checkpoint-релизов, поэтому его удобно сохранить как основную GitHub-закладку.