Skip to content

puppeteer-stealthvsundetected-chromedriver

MIT 301 30 94,086
3.6 million (month) May 29 2018 2.11.2(2023-04-11 04:13:00 ago)
12,519 5 1143 GPL-3.0
Sep 04 2020 1.1 million (month) 3.5.5(2024-02-17 17:18:36 ago)

Puppeteer Stealth is puppeteer plugin that fortifies headles browser for web scraping. This makes detection of puppeteer scrapers more difficult allowing to scrape targets which use headless browser detection techniques.

Puppeteer-stealth does this by applying various javascript patches to cover up traces of headless browser presence in the web scraping browser's environment.

Undetected chromedriver is custom open source headless browser driver based on Selenium. It extends Selenium headless browsers to be more ressistant to fingeprinting and identification techniquest like: - Cloudflare - Datadome - Imperva And other similar WAF anti-bot systems.

Highlights


stealthseleniumheadless-browser

Example Use


```javascript const puppeteer = require('puppeteer-extra') // add stealth plugin and use defaults (all evasion techniques) const StealthPlugin = require('puppeteer-extra-plugin-stealth') puppeteer.use(StealthPlugin()) // puppeteer usage as normal puppeteer.launch({ headless: true }).then(async browser => { console.log('Running tests..') const page = await browser.newPage() await page.goto('https://bot.sannysoft.com') await page.waitForTimeout(5000) await page.screenshot({ path: 'result.png', fullPage: true }) await browser.close() console.log("success - check the result.png screenshot") }) ```
```python # It works the same as Selenium just with a different import. import undetected_chromedriver as uc driver = uc.Chrome(headless=True, use_subprocess=False) driver.get('https://nowsecure.nl') driver.save_screenshot('screenshot.png') driver.close() ```

Alternatives / Similar


Was this page helpful?