PhantomJS |
PhantomJS is a headless WebKit scriptable with a JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG. |
JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R(via Selenium) |
BSD |
January 23, 2016 |
CasperJS |
CasperJS is an open source navigation scripting & testing utility written in Javascript for the PhantomJS WebKit headless browser and SlimerJS (Gecko). |
JavaScript |
MIT |
February 5, 2016 |
Zombie.js |
Zombie.js is a lightweight framework for testing client-side JavaScript code in a simulated environment. No browser required. |
JavaScript |
|
|
Lotte |
Lotte is a headless, automated testing framework built on top of PhantomJS and inspired by Ghostbuster. |
JavaScript |
|
|
Ghostbuster |
Automated browser testing via phantom.js, with all of the pain taken out! That means you get a real browser, with a real DOM, and can do real testing! |
JavaScript |
|
|
HeadlessBrowser |
A very miniature headless browser, for testing the DOM on Node.js |
JavaScript |
|
|
browser.rb |
Headless Ruby browser on top of Nokogiri and TheRubyRacer |
Ruby |
|
|
Selenium |
Selenium is a suite of tools to automate web browsers across many platforms. |
JavaScript, Python, Ruby, Java, C#, Haskell, Objective-C, Perl, PHP, R |
Apache License 2.0 |
October 9, 2015 |
jBrowserDriver |
A Selenium-compatible headless browser which is written in pure Java. WebKit-based. Works with any of the Selenium Server bindings. |
Java |
Apache |
April 7, 2016 |
SlimerJS |
SlimerJS is similar to PhantomJs, except that it runs Gecko, the browser engine of Mozilla Firefox, instead of Webkit (And it is not yet truly headless). |
JavaScript |
|
|
trifleJS |
A headless Internet Explorer browser using the .NET WebBrowser Class with a Javascript API running on the V8 engine. |
JavaScript |
|
|
DalekJS |
Automated cross browser testing with JavaScript. |
JavaScript |
|
|
HtmlUnit |
HtmlUnit is a "GUI-Less browser for Java programs". |
Java |
Apache |
November 12, 2015 |
ghost.py |
ghost.py is a webkit web client written in python. |
Python |
MIT |
January 11, 2016 |
twill |
twill is a simple language that allows users to browse the Web from a command-line interface. |
Python |
|
|
Awesomium |
Chromium-based headless browser engine |
C++, .NET |
|
|
SimpleBrowser |
A flexible and intuitive web browser engine designed for automation tasks. Built on the .Net 4 framework. |
.NET |
|
|
Watir-WebDriver |
The most elegant way to use Selenium WebDriver with ruby. |
Ruby |
|
|
Spynner |
Programmatic web browsing module with AJAX support for Python |
Python |
GPL v3.0 |
Decemeber 4, 2014 |
WatiN |
Web Application Testing In .Net |
.NET |
|
|
BrowserKit |
BrowserKit simulates the behavior of a web browser. |
PHP |
|
|
SST |
SST (selenium-simple-test) is a web test framework that uses Python to generate functional browser-based tests. |
Python |
|
|
stanislaw |
Python headless browser testing |
Python |
|
|
Jabba-Webkit |
Jabba's headless webkit browser for scraping AJAX-powered webpages. |
Python |
N/A |
October 23, 2014 |
Jaunt |
Java Web Scraping & Automation API |
Java |
|
|
Geb |
Geb is a browser automation solution. |
Groovy |
|
|
Jasmine-Headless-Webkit |
jasmine-headless-webkit uses the QtWebKit widget to run your specs without needing to render a pixel. |
Python, JavaScript, Ruby |
|
|
phantompy |
Phantompy is a headless WebKit engine with powerful pythonic api build on top of Qt5 Webkit |
Python |
BSD |
abandoned |
Python-Webkit |
Python-Webkit is a python extension to Webkit to add full, complete access to Webkit's DOM |
Python |
|
|
Splinter |
Splinter is an open source tool for testing web applications using Python. It lets you automate browser actions, such as visiting URLs and interacting with their items. |
Python |
|
|
Browserjet |
Headless webkit browser with node.js interface. |
JavaScript |
|
|
Headless |
Headless browser support for fast web acceptance testing in .Net |
.NET |
|
|
browser-launcher |
detect and launch browser versions, headlessly or otherwise |
JavaScript |
|
|
headless_browser |
Headless browser based on WebKit written in C++. |
C++ |
|
|
Guillotine |
A .NET headless browser, written in C#. |
.NET |
|
|
benv |
Stub a browser environment in node.js and headlessly test your client-side code. |
JavaScript |
|
|
grope |
A non-GUI library to represent browser environment using WebKit Framework + RubyCocoa |
Ruby |
|
|
RoboBrowser |
A simple, Pythonic library for browsing the web without a standalone web browser. |
Python |
|
|
MechanicalSoup |
A Python library for automating interaction with websites. |
Python |
|
|
mechanize |
Stateful programmatic web browsing. |
Python |
|
|
jedi-crawler |
Lightsabing Node/PhantomJS crawler; scrape dynamic content : without the hassle |
JavaScript |
|
|
Splash |
Splash is a javascript rendering service with an HTTP API. It's a lightweight browser with an HTTP API, implemented in Python using Twisted and QT. |
Any |
BSD |
April 3, 2016 |
Nightmare |
Nightmare is a high-level browser automation library built as an easier alternative to PhantomJS. |
JavaScript |
|
|
Erik |
Headless browser on top of Kanna and WebKit. |
Swift |
|
|
Ui4j |
Ui4j is a web-automation library for Java. It is a thin wrapper library around the JavaFx WebKit Engine, and can be used for automating the use of web pages and for testing web pages. |
Java |
MIT |
Janurary 20, 2016 |
WKZombie |
Functional headless browser (with JSON support) for iOS using WebKit and hpple/libxml2. |
Swift |
|
|