[go: up one dir, main page]

Browse free open source Headless Browsers and projects below. Use the toggles on the left to filter open source Headless Browsers by OS, license, language, programming language, and project status.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 1
    Selenium

    Selenium

    Browser automation framework and ecosystem

    Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should) also be automated as well. If you want to create robust, browser-based regression automation suites and tests, scale and distribute scripts across many environments, then you want to use Selenium WebDriver, a collection of language specific bindings to drive a browser - the way it is meant to be driven. If you want to create quick bug reproduction scripts, create scripts to aid in automation-aided exploratory testing, then you want to use Selenium IDE; a Chrome and Firefox add-on that will do simple record-and-playback of interactions with the browser. If you want to scale by distributing and running tests on several machines and manage multiple environments from a central point.
    Downloads: 107 This Week
    Last Update:
    See Project
  • 2
    FlareSolverr

    FlareSolverr

    Proxy server to bypass Cloudflare protection

    FlareSolverr is a proxy server to bypass Cloudflare and DDoS-GUARD protection. FlareSolverr starts a proxy server, and it waits for user requests in an idle state using few resources. When some request arrives, it uses puppeteer with the stealth plugin to create a headless browser (Firefox). It opens the URL with user parameters and waits until the Cloudflare challenge is solved (or timeout). The HTML code and the cookies are sent back to the user, and those cookies can be used to bypass Cloudflare using other HTTP clients. Web browsers consume a lot of memory. If you are running FlareSolverr on a machine with few RAM, do not make many requests at once. With each request, a new browser is launched. It is also possible to use a permanent session. However, if you use sessions, you should make sure to close them as soon as you are done using them. It is recommended to install using a Docker container because the project depends on an external browser that is already included.
    Downloads: 44 This Week
    Last Update:
    See Project
  • 3
    CefSharp

    CefSharp

    .NET bindings for the Chromium embedded framework

    CefSharp is an easy way to embed a full-featured standards-compliant web browser into your C# or VB.NET app. CefSharp has browser controls for WinForms and WPF apps, and a headless (offscreen) version for automation projects too. CefSharp is based on Chromium Embedded Framework, the open source version of Google Chrome. CefSharp embraces modern web standards, and supports HTML5, JavaScript, CSS3 and HTML5 audio/video elements. 3D content is supported via WebGL which uses OpenGL/DirectX for hardware accelerated rendering. CefSharp includes embedded modules for PDF, web page printing and the WebKit Inspector (developer tools). CefSharp has no external dependencies, and the full build of CefSharp only adds ~80 MB to your app. See the CefSharp.MinimalExample project for ready-to-compile minimal example apps built with CefSharp. Within the projects source there are more complicated example projects.
    Downloads: 38 This Week
    Last Update:
    See Project
  • 4
    Playwright

    Playwright

    Node library to automate Chromium, Firefox & WebKit with a single API

    Playwright is a Node library for automating Chromium, Firefox and WebKit using a single API. It supports headless execution for all these browsers on Linux, macOS and Windows, providing automated web browser interactions that are fast, capable, reliable and ever-green. Playwright enables a broad spectrum of cross-browser web automation capabilities, which are used by Single Page Apps and Progressive Web Apps. These include scenarios that span multiple pages, domains and iframes; emulation of mobile devices, geolocation, and permissions; upload and download files and many more.
    Downloads: 23 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    Puppeteer

    Puppeteer

    Headless Chrome Node.js API

    Puppeteer is a headless Node library that provides a high level API for controlling Chromium or Chrome over the DevTools protocol. It requires zero setup and comes bundled with the Chromium version most suited to it. Puppeteer is headless by default, making it fast to run. However, it can also be set to run full or non-headless Chrome or Chromium, simply set the headless option when launching a browser. Many of the things you can do manually in the browser, you can also do with Puppeteer such as generate page screenshots and PDFs, crawl a Single-Page Application, test Chrome extensions and more.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 6
    Playwright for Python

    Playwright for Python

    Python version of the Playwright testing and automation library

    Playwright enables reliable end-to-end testing for modern web apps. Single API to automate Chromium, Firefox and WebKit. Capable automation for single page apps that rely on the modern web platform. Use the Playwright API in JavaScript & TypeScript, Python, .NET and, Java. With Playwright, test how your app behaves in Apple Safari with WebKit builds for Windows, Linux and macOS. Test locally and on CI. Use device emulation to test your responsive web apps in mobile web browsers. Playwright supports headless (without browser UI) and headed (with browser UI) modes for all browsers and all platforms. Headed is great for debugging, and headless is faster and suited for CI/cloud executions. Playwright interactions auto-wait for elements to be ready. This improves reliability and simplifies test authoring. Playwright receives browser signals, like network requests, page navigations and page load events to eliminate the need for sleep timeouts that cause flakiness.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 7
    googler

    googler

    Google from the terminal

    googler is a power tool to Google (web, news, videos and site search) from the command line. It shows the title, URL and abstract for each result, which can be directly opened in a browser from the terminal. Results are fetched in pages (with page navigation). Supports sequential searches in a single googler instance. googler was initially written to cater to headless servers without X. You can integrate it with a text-based browser. However, it has grown into a very handy and flexible utility that delivers much more. For example, fetch any number of results or start anywhere, limit the search by any duration, define aliases to google search any number of websites, and switch domains easily, all of this in a very clean interface without ads or stray URLs. The shell completion scripts make sure you don't need to remember any options.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 8
    Erik

    Erik

    Erik is an headless browser based on WebKit

    Erik is a headless browser based on WebKit, written in Swift, allowing developers to run functional tests and manipulate web pages using JavaScript.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 9
    RPA for Python

    RPA for Python

    Python package for doing RPA

    Python package for doing RPA. RPA for Python's simple and powerful API makes robotic process automation fun! You can use it to quickly automate away repetitive time-consuming tasks on websites, desktop applications, or the command line. See sample Python script, the RPA Challenge solution, and RedMart groceries example. To send a Telegram app notification, simply look up @rpapybot to allow receiving messages. To automate Chrome browser invisibly, use headless mode. To run 10X faster instead of normal human speed, use turbo mode (read the caveats!). Some CAPTCHAs can be solved using services like 2Captcha or directly by replicating user actions. TagUI is a leading open-source RPA software with tens of thousands of users. It was created in 2016-2017 when I left DBS Bank as a test automation engineer, for a one-year sabbatical to Eastern Europe. Most of its code base was written in Novi Sad Serbia. In 2018, I joined AI Singapore to continue development of TagUI.
    Downloads: 3 This Week
    Last Update:
    See Project
  • Deliver trusted data with dbt Icon
    Deliver trusted data with dbt

    dbt Labs empowers data teams to build reliable, governed data pipelines—accelerating analytics and AI initiatives with speed and confidence.

    Data teams use dbt to codify business logic and make it accessible to the entire organization—for use in reporting, ML modeling, and operational workflows.
    Learn More
  • 10
    miniblink49

    miniblink49

    Lighter, faster browser kernel of blink to integrate HTML UI in apps

    miniblink is an open source, one file, small browser widget based on chromium. By using C interface, you can create a browser with just some line code. miniblink is an open source, single-file, and currently the smallest known chromium-based browser control. Through its exported pure C interface, a browser control can be created in a few lines of code. C++, C#, Delphi and other language calls (support C++, C#, Delphi language to call). Embedded Nodejs, support electron (with Nodejs, can run electron). Customize as you wish, simulate another browser environment. Perfect HTML5 support, friendly to various front-end libraries (support HTML5, and friendly to front framework). After turning off the cross-domain switch, you can use various cross-domain functions (support cross-domain). Headless mode, which greatly saves resources and is suitable for crawlers (headless mode, be suitable for Web Crawler).
    Downloads: 3 This Week
    Last Update:
    See Project
  • 11
    Browser Pool

    Browser Pool

    A Node.js library to easily manage and rotate a pool of web browsers

    Browser Pool is a small, but powerful and extensible library, that allows you to seamlessly control multiple headless browsers at the same time with only a little configuration, and a single function call. Currently it supports Puppeteer, Playwright and it can be easily extended with plugins. We created Browser Pool because we regularly needed to execute tasks concurrently in many headless browsers and their pages, but we did not want to worry about launching browsers, closing browsers, restarting them after crashes and so on. We also wanted to easily and reliably manage the whole browser/page lifecycle. You can use Browser Pool for scraping the internet at scale, testing your website in multiple browsers at the same time or launching web automation robots.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 12
    IPFS Web UI

    IPFS Web UI

    A frontend for an IPFS node

    A web interface to IPFS, shipped with Kubo, and ipfs-desktop. Check on your node stats, explore the IPLD powered merkle forest, see peers around the world and manage your files, without needing to touch the CLI. When working on the code, run an ipfs daemon, the local dev server, the unit tests, and the storybook component viewer and see the results of your changes as you save files. If you need to run IPFS in a Docker container, you can still have Web UI available by exposing both the Gateway and Web UI ports. The end-to-end tests (E2E) test the full app in a headless Chromium browser. They spawn real IPFS node for HTTP API and a static HTTP server to serve the app. The purpose of those tests is not being comprehensible, but act as a quick regression and integration suite.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    Playwright for .NET

    Playwright for .NET

    .NET version of the Playwright testing and automation library

    Playwright for .NET is the official language port of Playwright, the library to automate Chromium, Firefox and WebKit with a single API. Playwright is built to enable cross-browser web automation that is ever-green, capable, reliable and fast. Cross-browser. Playwright supports all modern rendering engines including Chromium, WebKit, and Firefox. Cross-platform. Test on Windows, Linux, and macOS, locally or on CI, headless or headed. Cross-language. Use the Playwright API in TypeScript, JavaScript, Python, .NET, Java. Test Mobile Web. Native mobile emulation of Google Chrome for Android and Mobile Safari. The same rendering engine works on your Desktop and in the Cloud. Auto-wait. Playwright waits for elements to be actionable prior to performing actions. It also has a rich set of introspection events. The combination of the two eliminates the need for artificial timeouts - the primary cause of flaky tests.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 14
    Playwright for Java

    Playwright for Java

    Java version of the Playwright testing and automation library

    Playwright Java is the Java version of the Playwright testing and automation library, enabling reliable end-to-end testing for modern web applications.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 15
    Ulixee Hero

    Ulixee Hero

    The web browser built for scraping

    It's the first modern headless browsers designed specifically for scraping instead of just automated testing. Hero provides access to the W3C DOM specification without the need for Puppeteer's complicated evaluate callbacks and multi-context switching. We've recreated a fully compliant DOM directly in NodeJS allowing you bypass the headaches of previous scraper tools. The powerful Chrome engine sits under the hood, allowing for lightning fast rendering. Emulators make it easy to disguise your script as practically any browser.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    Wraith

    Wraith

    A responsive screenshot comparison tool

    Wraith is a screenshot comparison tool, created by developers at BBC News. Wraith uses a headless browser to create screenshots of webpages on different environments (or at different moments in time) and then creates a diff of the two images; the affected areas are highlighted in blue. There are two main modes for using Wraith, 'capture' mode and 'history' mode. Wraith has some built-in JavaScript and configuration file templates for you to get started with right away. If you wish to take screenshots of a component rather than the entire page, use casperjs and pass a selector along with your paths. In the 'component' example config, you can see how we specify a component name, domain path and selector we want to capture. All config options will be placed in a YAML config file. You set the headless browser, diff mode, threshold, fuzz amount and screen widths.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 17
    Browser Preview for VS Code

    Browser Preview for VS Code

    A real browser preview inside your editor that you can debug

    Browser Preview for VS Code enables you to open a real browser preview inside your editor that you can debug. Browser Preview is powered by headless Chromium, and works by starting a headless Chromium instance in a new process. This can either be Google Chrome or Microsoft Edge. This enables a secure way to render web content inside VS Code, and enables interesting features such as in-editor debugging and more! Make sure you have Google Chrome installed on your computer. Browser Preview for VS Code is debuggable, launch URLs and attach Debugger for Chrome to the browser view instance, and debug within VS Code. You can enable in-editor debugging of Browser Preview by installing Debugger for Chrome, and configure VS Code's debugger to either attach or launch to the browser previews by using the provided configuration options.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Flutter InAppWebView Plugin

    Flutter InAppWebView Plugin

    A Flutter plugin that allows you to add an inline webview

    A Flutter plugin that allows you to add an inline WebView, to use a headless WebView, and to open an in-app browser window. Adding the InAppWebView widget into your app is very simple. It’s just a widget like any other Flutter widget. Use InAppBrowser or ChromeSafariBrowser to open an in-app browser! ChromeSafariBrowser is based on Chrome Custom Tabs on Android and on SFSafariViewController on iOS. Create a Class that extends the InAppBrowser/ChromeSafariBrowser Class in order to override the callbacks to manage the browser events. It can be used to run a WebView in background without attaching an InAppWebView to the widget tree. As InAppWebView, it has the same options and events. Use InAppWebViewController to control the headless WebView instance.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    Playwright for Go

    Playwright for Go

    Playwright for Go a browser automation library to control Chromium

    Playwright is a Node.js library to automate Chromium, Firefox, and WebKit with a single API. Playwright is built to enable cross-browser web automation that is ever-green, capable, reliable and fast. Headless execution is supported for all browsers on all platforms. Playwright is built to automate the broad and growing set of web browser capabilities used by Single Page Apps and Progressive Web Apps. Scenarios that span multiple page, domains and iframes. Auto-wait for elements to be ready before executing actions (like click, fill). Intercept network activity for stubbing and mocking network requests. Emulate mobile devices, geolocation, permissions. Support for web components via shadow-piercing selectors. Native input events for mouse and keyboard. Upload and download files. The bridge between Node.js and the other languages is basically a Node.js runtime combined with Playwright which gets shipped for each of these languages (around 50MB).
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    Rod

    Rod

    A Devtools driver for web automation and scraping

    Rod is a high-level driver for DevTools Protocol. It's widely used for web automation and scraping. Rod can automate most things in the browser that can be done manually. Chained context design, intuitive to timeout or cancel the long-running task. Auto-wait elements to be ready. Debugging friendly, auto input tracing, remote monitoring headless browser. Thread-safe for all operations. Automatically find or download browser. High-level helpers like WaitStable, WaitRequestIdle, HijackRequests, WaitDownload, etc. Two-step WaitEvent design, never miss an event (how it works). Correctly handles nested iframes or shadow DOMs. No zombie browser process after the crash (how it works). CI enforced 100% test coverage.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    SecretAgent

    SecretAgent

    The web scraper that's nearly impossible to block

    SecretAgent is a headless browser that’s nearly impossible to detect. It achieves this by emulating real users. And it has powerful auto-replay functionality that lets you create and debug scripts in record setting time.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    SlimerJS

    SlimerJS

    A scriptable browser like PhantomJS, based on Firefox

    SlimerJS is a scriptable browser. It allows you to manipulate a web page with an external Javascript script: opening a webpage, clicking on links, modifying the content... It is useful to do functional tests, page automation, network monitoring, screen capture etc. It is a tool like PhantomJs, except that it runs Gecko instead of Webkit, and it is headless when using Firefox 56+. It can be used with Firefox 59. Higher version of Firefox is not supported and probably will not be supported in the future, as the development is suspended for now. SlimerJS provides the same API of PhantomJS. The current version of SlimerJS is highly compatible with PhantomJS 2.1. See current release notes in docs/release-notes-*.rst, and read the compatibility table to know the implementation level. The main goal of SlimerJS is to allow to execute all scripts developed for PhantomJS. So you could use tools like CasperJS. In fact, CasperJs 1.1 and higher can be executed with SlimerJS!
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    Splinter

    Splinter

    Splinter - Python test framework for web applications

    Splinter is a Python test framework for web applications, providing a simple and consistent API for browser automation and testing.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    Surf

    Surf

    Stateful programmatic web browsing in Go

    Surf is a Go library that implements a virtual web browser, allowing developers to programmatically interact with web pages as a real browser would.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    WKZombie

    WKZombie

    WKZombie is a Swift framework for iOS/OSX to navigate within websites

    WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of a User Interface or API, also known as a Headless browser. It can be used to run automated tests/snapshots and manipulate websites using Javascript. WKZombie is an iOS/OSX web-browser without a graphical user interface. It was developed as an experiment in order to familiarize myself with using functional concepts written in Swift 4. It incorporates WebKit (WKWebView) for rendering and hpple (libxml2) for parsing the HTML content. In addition, it can take snapshots and has rudimentary support for parsing/decoding JSON elements. Chaining asynchronous actions makes the code compact and easy to use.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next