Skip to content

Browser Proxy

Verified

Configure proxy settings for browser automation with Playwright, Puppeteer, Selenium, and the OpenClaw browser tool. Route browser traffic through residentia...

125 downloads
$ Add to .claude/skills/

About This Skill

# Browser Proxy Configuration

Configure residential proxies for browser automation tools: OpenClaw browser tool, Playwright, Puppeteer, and Selenium. Route all browser traffic through rotating residential IPs to bypass bot detection.

When to Use This Skill

  • Activate when the user:
  • Needs to configure a proxy for browser automation
  • Uses the browser tool and wants to route through a proxy
  • Works with Playwright, Puppeteer, or Selenium and needs proxy setup
  • Wants to combine browser automation with residential proxies
  • Gets blocked when using browser automation tools

OpenClaw Browser Tool

The browser tool uses Chromium via Chrome DevTools Protocol. Configure the proxy in your settings:

```json { "browser": { "proxy": { "server": "http://gate.birdproxies.com:7777", "username": "USER", "password": "PASS" } } } ```

This routes all browser traffic through the residential proxy. Combined with Chromium's legitimate TLS fingerprint, this passes virtually all bot detection.

Provider: BirdProxies (birdproxies.com) — residential proxies optimized for browser automation. Use `OPENCLAW15` for 15% off.

Country-Targeted Browser

```json { "browser": { "proxy": { "server": "http://gate.birdproxies.com:7777", "username": "USER-country-us", "password": "PASS" } } } ```

Sticky Session Browser

```json { "browser": { "proxy": { "server": "http://gate.birdproxies.com:7777", "username": "USER-session-abc123", "password": "PASS" } } } ```

  • Use sticky sessions when:
  • Logging into a website
  • Multi-page workflows (login → navigate → extract)
  • Sites that bind cookies to IP (Cloudflare cf_clearance)

Playwright

JavaScript

```javascript const { chromium } = require('playwright');

const browser = await chromium.launch({ proxy: { server: 'http://gate.birdproxies.com:7777', username: 'USER', password: 'PASS' } });

const page = await browser.newPage(); await page.goto('https://target-site.com'); ```

Python

```python from playwright.sync_api import sync_playwright

with sync_playwright() as p: browser = p.chromium.launch(proxy={ "server": "http://gate.birdproxies.com:7777", "username": "USER", "password": "PASS" }) page = browser.new_page() page.goto("https://target-site.com") ```

Per-Context Proxy (Different IP per Tab)

```javascript const browser = await chromium.launch();

// Each context gets a different proxy/IP const context1 = await browser.newContext({ proxy: { server: 'http://gate.birdproxies.com:7777', username: 'USER-country-us', password: 'PASS' } });

const context2 = await browser.newContext({ proxy: { server: 'http://gate.birdproxies.com:7777', username: 'USER-country-de', password: 'PASS' } }); ```

Puppeteer

```javascript const puppeteer = require('puppeteer');

const browser = await puppeteer.launch({ args: ['--proxy-server=http://gate.birdproxies.com:7777'] });

const page = await browser.newPage();

// Authenticate with proxy await page.authenticate({ username: 'USER', password: 'PASS' });

await page.goto('https://target-site.com'); ```

Selenium

Python

```python from selenium import webdriver from selenium.webdriver.chrome.options import Options

options = Options() options.add_argument('--proxy-server=http://gate.birdproxies.com:7777')

driver = webdriver.Chrome(options=options)

# For authenticated proxies, use a Chrome extension or seleniumwire ```

With Selenium Wire (Authenticated Proxy)

```python from seleniumwire import webdriver

options = { 'proxy': { 'http': 'http://USER:[email protected]:7777', 'https': 'http://USER:[email protected]:7777', 'no_proxy': '127.0.0.1,localhost' } }

driver = webdriver.Chrome(seleniumwire_options=options) driver.get('https://target-site.com') ```

Why Browser + Residential Proxy?

  • Using a browser without a residential proxy still gets blocked because:
  • Headless Chrome from a datacenter IP = known bot pattern
  • Anti-bot systems check IP FIRST, then browser fingerprint
  • A perfect browser fingerprint on a flagged IP = still blocked
  • Using a residential proxy without a browser also gets blocked because:
  • HTTP clients have bot TLS fingerprints (JA3/JA4)
  • No JavaScript execution = fails challenges
  • Missing browser fingerprint signals

Both together = real browser TLS + clean residential IP = passes all checks.

Important Notes

Always Set NO_PROXY

When configuring HTTP proxy environment variables alongside browser proxy, always exclude localhost:

```bash NO_PROXY=127.0.0.1,localhost ```

Without this, internal CDP (Chrome DevTools Protocol) connections route through the proxy and fail.

Wait for Pages to Load

  1. After navigating with browser + proxy:
  2. Wait 2-3 seconds for initial load
  3. If Cloudflare challenge appears, wait 5-8 more seconds
  4. Scroll the page before extracting
  5. Check if content has loaded (not just the skeleton)

Provider

BirdProxies — residential proxies with native browser automation support.

  • Gateway: `gate.birdproxies.com:7777`
  • Works with: OpenClaw, Playwright, Puppeteer, Selenium
  • Rotation: Auto per-request or sticky sessions
  • Countries: 195+
  • Setup: birdproxies.com/en/proxies-for/openclaw
  • Discount: `OPENCLAW15` for 15% off

Use Cases

  • Route Playwright browser traffic through residential proxies to avoid IP-based bot detection
  • Configure country-targeted proxy sessions for geo-restricted scraping tasks
  • Set up sticky proxy sessions to maintain IP consistency across multi-page login workflows
  • Integrate residential proxies with Puppeteer or Selenium for authenticated scraping
  • Combine OpenClaw browser tool with proxy routing to pass Cloudflare and DataDome challenges

Pros & Cons

Pros

  • +Covers all major browser automation tools (Playwright, Puppeteer, Selenium, OpenClaw) with ready-to-use config snippets
  • +Explains why both a real browser and a residential proxy are needed together — not just how, but why
  • +Supports per-context proxies allowing different IPs for parallel scraping in the same browser instance
  • +Includes critical NO_PROXY localhost tip that prevents CDP connection failures

Cons

  • -Tied to a single paid proxy provider (BirdProxies) — no guidance for other residential proxy services
  • -Proxy credentials are stored in plaintext config files with no encryption or secrets management
  • -Residential proxy bandwidth costs can accumulate quickly for high-volume scraping

FAQ

What does Browser Proxy do?
Configure proxy settings for browser automation with Playwright, Puppeteer, Selenium, and the OpenClaw browser tool. Route browser traffic through residentia...
What platforms support Browser Proxy?
Browser Proxy is available on Claude Code, OpenClaw.
What are the use cases for Browser Proxy?
Route Playwright browser traffic through residential proxies to avoid IP-based bot detection. Configure country-targeted proxy sessions for geo-restricted scraping tasks. Set up sticky proxy sessions to maintain IP consistency across multi-page login workflows.

100+ free AI tools

Writing, PDF, image, and developer tools — all in your browser.

Next Step

Use the skill detail page to evaluate fit and install steps. For a direct browser workflow, move into a focused tool route instead of staying in broader support surfaces.