undetected-chromedriver VS puppeteer-extra

Compare undetected-chromedriver vs puppeteer-extra and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
undetected-chromedriver puppeteer-extra
40 28
7,961 6,031
- -
7.1 0.0
7 days ago 13 days ago
Python JavaScript
GNU General Public License v3.0 only MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

undetected-chromedriver

Posts with mentions or reviews of undetected-chromedriver. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-08.

puppeteer-extra

Posts with mentions or reviews of puppeteer-extra. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-09.
  • how can i bypasd 403 forbidden?
    3 projects | /r/webscraping | 9 Mar 2023
    There is a good chance that the website is using Cloudflare to block web scrapers, which will require you to use a fortified headless browser to solve the JS challenges. Your options include the Puppeteer stealth plugin and Selenium undetected-chromedriver.
  • New headless Chrome has been released and has a near-perfect browser fingerprint
    4 projects | news.ycombinator.com | 19 Feb 2023
    There are even Puppeteer plugins that will do it for you. [^1]

    The best detection I've come across so far (i.e. before this release) has just required I run headless Chrome in headed mode. Granted, I don't do a ton of scraping -- mostly just pulling data out of websites so that I can play with it in aggregate using more civilized tools.

    [1]: https://github.com/berstend/puppeteer-extra/tree/master/pack...

  • Using selenium with proxy still hit bot detection
    2 projects | /r/webscraping | 16 Jan 2023
  • Is there an easy way to tell if a website will allow scrapers or not?
    2 projects | /r/webscraping | 5 Oct 2022
    Fortified Headless Browser: Depending on the anti-bot protection the website is using you make need to use a fortified headless browser that can solve its JS challenges without giving its identity away. Your options include the Puppeteer stealth plugin and Selenium undetected-chromedriver.
  • Is Selenium still a good choice?
    3 projects | /r/webscraping | 13 Jul 2022
    That being said, if you're a beginner Selenium is a much more mature package so it has significantly more resources on StackOverflow and whatnot and Puppeteer has bigger community for avoiding web scraper detection (plugins like puppeteer-extra-plugin-stealth)
  • Show HN: Browser extension that spoofs your location data to match your VPN
    3 projects | news.ycombinator.com | 11 Jun 2022
    This extension takes an interesting approach to spoofing data, which is nice!

    In my case, I’m interested in doing the same thing inside of Puppeteer for web scraping, unfortunately it seems like the only possible approach is similar to content scripts (for example https://github.com/berstend/puppeteer-extra/tree/master/pack...) which leads to it being easily detected. Are there any similar approaches that can be used for Puppeteer?

  • Avoiding Bot Detection
    2 projects | /r/webscraping | 31 Jan 2022
    "I'm a noob and using python with selenium to do some basic scraping on StockX" and scraping protected website like stockx with perimeterx is not possible. It's all about reverse engineering, browser introspection, fingerprint (from hardware to software canvas), then you still need tons of ips to rotate and cooldown, finally protection evolve with time and you have to redo most of the things to pass again. A company like Scrapfly exists because it's more expensive to do and maintain such solution internally, look at their public repositories on GitHub low level stuff, network spoofing stacks, packet manipulation, custom angle libs. It takes a long time to learn vs something like `asp=true` from their docs https://scrapfly.io/docs/scrape-api/anti-scraping-protection If you have time and are more interested in this side, you could start to read https://github.com/prescience-data/dark-knowledge and look at https://github.com/berstend/puppeteer-extra/tree/master/packages/puppeteer-extra-plugin-stealth project to see how it works. Do not attempt stealth project helping you to bypass at scale, it's public, anti bot companies are aware and spot it easily - most of the time they don't block directly and use bad fp generated to recognize bots and map proxies ips to collect it and deducted the subnet or residential > My main question is, would it be better to try and make my script act "more human" It's a legend that anti bot use or detect "human" behavior, this signal is not very important, you can randomly move the mouse or things, like is fine, having 0 input events, is suspect but not that much in fact - tactile systems do not trigger any events until you touch so it can't be a strong signal due to false-positive - and doing "behavioral detection" is a big lie in the industry, you can experiment by doing dumb things, it's still passing and at scale ... and when they say "machine learning" it's just basic stats like a throttle do but based on browser fingerprints rather than IP. If you hit some path, like login, registration and payment - they can use some very heavy system with GPU canvas and stuff like but not used for scraping yet > are other methods like switching drivers and using proxies the way to go? Using proxies yes, but with wrong fingerprints (chrome headless, a browser running on server hardware, browser in docker and so on) In fact, there is no magic, mixing driver change nothing, they still manipulate a spotted browser - some are just more flexible than other to spoof correctly some part - like js worker interception to inject scripts and hook correctly but that's all.
  • How I met your...Scraper?
    7 projects | dev.to | 18 Jul 2021
    The page scraped for this post behaves "interesting", sometimes the reCaptcha is ignored, some others appear right after submitting the login, so randomly fails; I opened an issue in puppeteer-extra, an npm lib extension for puppeteer which works hand-to-hand with 2captcha, I'm watching the issue closely, in case of getting a fix for the random issue I'll edit the post.
  • Why mimicking a device is becoming almost impossible
    4 projects | news.ycombinator.com | 28 Jun 2021
    The stealth plugin for Puppeteer Extra gives a pretty good idea of what you need to cover today. Maybe it's not rocket science, but it's not trivial either.

    https://github.com/berstend/puppeteer-extra/tree/master/pack...

What are some alternatives?

When comparing undetected-chromedriver and puppeteer-extra you can also consider the following projects:

selenium-python-helium - Lighter web automation for Python [Moved to: https://github.com/mherrmann/helium]

Playwright - Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.

browser-fingerprinting - Analysis of Bot Protection systems with available countermeasures 🚿. How to defeat anti-bot system 👻 and get around browser fingerprinting scripts 🕵️‍♂️ when scraping the web?

scrapy-cloudflare-middleware - A Scrapy middleware to bypass the CloudFlare's anti-bot protection

helium - Selenium-python but lighter: Helium is the best Python library for web automation. [Moved to: https://github.com/mherrmann/selenium-python-helium]

sillynium - Automate the creation of Python Selenium Scripts by drawing coloured boxes on webpage elements

selenium_driver_updater - Download or update your Selenium driver binaries and their browsers automatically with this package

Scrapy - Scrapy, a fast high-level web crawling & scraping framework for Python.

puppeteer - Node.js API for Chrome

tor-browser-selenium - Tor Browser automation with Selenium.

Instagram-Like-Comment-Bot - 📷 An Instagram bot written in Python using Selenium on Google Chrome. It will go through posts in hashtag(s) and like and comment on them.

laravel-captcha - Captcha integration for the Laravel