Skip to main content

Undetected browser automation addon for browser-use with proxy support

Project description

Browser Use Undetected

An undetected browser automation wrapper/addon for browser-use that provides stealth capabilities using Camoufox (Firefox-based) & proxies to avoid detection by anti-bot systems, with local ReCAPTCHA v2/v3 solving & cloud solving almost all other bot detection systems using CapSolver API

Features

  • Stealth Browser Session: Uses Camoufox for undetected browsing
  • Proxy Support: Built-in proxy configuration
  • Captcha Solving: Automatic captcha detection and solving using local methods & cloud (paid) services
  • Drop-in Replacement: Easy integration with existing browser-use code

You can find demos near the bottom of the page.

Issues

  • Humanizer setting does not work with comboboxes/dropdowns
  • Captcha solving not fully functional/tested
  • Unable to enter extra arguments in agent specifically for camoufox
  • Oxylabs is not a great provider, includes restricted targets for resedential proxies

Installation

Requires:

python 3.11 - 3.13

In terminal:

pip install browser-use-undetected
camoufox fetch

Add .env variables:

# proxy settings (optional) - can set using Agent arguments or globally
PROXY_USERNAME=
PROXY_PASSWORD=
PROXY_HOST=
PROXY_PORT=

# Capsolver API Key (optional) - for fallback captcha solving
# Get your API key from https://capsolver.com/
CAPSOLVER_API_KEY=

Quick Start

import asyncio
from dotenv import load_dotenv
load_dotenv()
from langchain_openai import ChatOpenAI
from browser_use_undetected import StealthAgent, PROXY


async def main():
    agent = StealthAgent(
        task="Find a cheap Iphone <$500 using google",
		llm=ChatOpenAI(model="gpt-4.1-nano-2025-04-14"),
		#humanize=True, #Human movement, currently comboboxes/dropdowns do not work with this
        proxy=PROXY(), # Optional
		#proxy={
		#	"server": "http://proxy:port", 
		#	"username": "user", 
		#	"password": "pass"
		#},
        auto_solve_captchas=True,  # Optional
        capsolver_api_key="your_capsolver_key"  # Optional
    )

    result = await agent.run()
    print(result)


if __name__ == "__main__":
    asyncio.run(main())

Advanced Usage

Using StealthBrowserSession directly

from browser_use_undetected import StealthBrowserSession
from browser_use.agent.service import Agent

# Create a stealth browser session
browser_session = StealthBrowserSession(
    proxy={"server": "http://proxy:port", "username": "user", "password": "pass"},
    auto_solve_captchas=True,
    capsolver_api_key="your_capsolver_key"
)

# Use with regular Agent
agent = Agent(
    task="Your task here",
    llm=your_llm_instance,
    browser_session=browser_session
)

Proxy Configuration

from browser_use_undetected import PROXY

# Use predefined proxy format
proxy_config = PROXY(
    host="proxy.example.com",
    port="8080",
    username="user",
    password="pass"
)

agent = StealthAgent(
    task="Your task",
    llm=your_llm_instance,
    proxy=proxy_config
)

Configuration Options

  • proxy: Proxy configuration dict or PROXY object
  • auto_solve_captchas: Enable automatic captcha solving (default: True)
  • capsolver_api_key: API key for CapSolver service
  • All other browser-use Agent parameters are supported

Demos



Testing Bot Detection (takes abit to load, broken on pypi page, view using github link for now):

Bot Detection



Task: Add grocery items to cart, and checkout.

AI Did My Groceries



Prompt: Add my latest LinkedIn follower to my leads in Salesforce.

LinkedIn to Salesforce



Prompt: Read my CV & find ML jobs, save them to a file, and then start applying for them in new tabs, if you need help, ask me.'

https://github.com/user-attachments/assets/171fb4d6-0355-46f2-863e-edb04a828d04



Prompt: Write a letter in Google Docs to my Papa, thanking him for everything, and save the document as a PDF.

Letter to Papa



Prompt: Look up models with a license of cc-by-sa-4.0 and sort by most likes on Hugging face, save top 5 to file.

https://github.com/user-attachments/assets/de73ee39-432c-4b97-b4e8-939fd7f323b3



Roadmap

  • Anti-Detection Browser
  • Proxy support
  • Fix disabled features (Remote connection, Advanced context & browser connection)
  • Anti-Captcha (Free local solving)
  • More proxy generation providers support
  • Anti-Captcha (Paid services)
  • Extensive testing of Anti-Captcha

Dependencies

This addon requires:

  • browser-use - The base browser automation framework
  • camoufox[geoip] - Undetected Firefox-based browser
  • psutil - System process utilities
  • pydantic - Data validation
  • playwright-recaptcha - Local reCAPTCHA solving
  • capsolver - Cloud CAPTCHA solving service

License

MIT License - see LICENSE file for details.

Contributing

We encourage contributions!

This is an addon for browser-use. For the main framework, see browser-use.

Versioning

The first 2 decimal points are the browser-use version e.g 0.2.5 What comes after the last (third) decimal point is the current version of browser-use-undetected

Citation

@software{browser_use2024,
  author = {Müller, Magnus and Žunič, Gregor},
  title = {Browser Use: Enable AI to control your browser},
  year = {2024},
  publisher = {GitHub},
  url = {https://github.com/browser-use/browser-use}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

browser_use_undetected-0.2.5.10.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

browser_use_undetected-0.2.5.10-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file browser_use_undetected-0.2.5.10.tar.gz.

File metadata

File hashes

Hashes for browser_use_undetected-0.2.5.10.tar.gz
Algorithm Hash digest
SHA256 715b9ce7b703876d3be97fec0ad76ca525c0b44a3489b9c11faf100e312de539
MD5 25e8c1e7fcb87e9cf12f8048afdadf51
BLAKE2b-256 05e13b5cb7c1810b35ad63726d402cfd8ce9c02bdc1c89d9557ffd1a1277f94e

See more details on using hashes here.

File details

Details for the file browser_use_undetected-0.2.5.10-py3-none-any.whl.

File metadata

File hashes

Hashes for browser_use_undetected-0.2.5.10-py3-none-any.whl
Algorithm Hash digest
SHA256 220127aeeb3c31c664f67b0984fab1270c5d85d333c3f09e21ee916d5cc7e8fe
MD5 1d2d38f7125b311eac1eacc92c598299
BLAKE2b-256 b49eb7e1ad4df2498a387b8148c43803a1085919c218d85627dd2988934f5573

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page