Loading...
Loading...
This skill should be used when the user asks to "bypass bot detection", "avoid CAPTCHA", "stealth browser automation", "undetected playwright", "bypass Google bot check", "rebrowser-playwright", or needs to automate websites that detect and block bots.
npx skill4agent add greekr4/playwright-bot-bypass playwright-bot-bypass| Detection Point | Standard Playwright | This Solution |
|---|---|---|
| WebDriver property | | Removed |
| WebGL Renderer | SwiftShader (software) | Real GPU (Apple M2, etc.) |
| User Agent | Contains "HeadlessChrome" | Clean Chrome UA |
| Chrome runtime | Missing properties | Complete chrome.runtime |
npm install rebrowser-playwrightimport { chromium } from 'rebrowser-playwright';
const browser = await chromium.launch({
headless: false,
channel: 'chrome' // Use real Chrome browser
});
const context = await browser.newContext();
// Remove WebDriver property
await context.addInitScript(() => {
delete Object.getPrototypeOf(navigator).webdriver;
});
const page = await context.newPage();
await page.goto('https://example.com');navigator.webdriverawait context.addInitScript(() => {
delete Object.getPrototypeOf(navigator).webdriver;
});channel: 'chrome'chromium.launch({
headless: false,
channel: 'chrome'
});examples/stealth-google-search.mjsnode scripts/bot-detection-test.mjsscripts/bot-detection-test.mjsscripts/stealth-template.mjsexamples/stealth-google-search.mjsexamples/ab-test.mjsheadless: falsechannel: 'chrome'playwright-stealth| Environment | bot.sannysoft.com | Google Search |
|---|---|---|
| Node.js rebrowser-playwright | ✅ Pass | ✅ Works |
| Python playwright-stealth | ✅ Pass | ❌ CAPTCHA |
rebrowser-playwrightplaywright-stealthundetected-chromedriver| Library | bot.sannysoft.com | Google Search |
|---|---|---|
| playwright-stealth | ✅ Pass | ❌ CAPTCHA |
| undetected-chromedriver | ✅ Pass | ✅ Works! |
pip install undetected-chromedriverimport undetected_chromedriver as uc
# Specify your Chrome version
driver = uc.Chrome(version_main=144)
driver.get("https://www.google.com")
search_box = driver.find_element("name", "q")
search_box.send_keys("your search query")
search_box.submit()version_mainchrome://versionimport subprocess
result = subprocess.run(['node', 'stealth-script.mjs', query], capture_output=True)rebrowser-playwrightplaywrightchannel: 'chrome'addInitScript# Verify Chrome is installed
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --versionrebrowser-playwright// Correct
import { chromium } from 'rebrowser-playwright';
// Wrong - will be detected
import { chromium } from 'playwright';