(FORK, works with unmodified Qt 5.3) Scriptable Headless WebKit
 
 
 
 
 
 
Go to file
Marco Ferragina 834d9f5891 Fix missing Makefiles in breakpad due to global .gitignore.
http://code.google.com/p/phantomjs/issues/detail?id=587
2012-06-12 09:40:31 -07:00
debian The python package is arch: all 2011-07-03 22:11:08 +02:00
deploy Tweak the linux deploy script. 2012-06-08 11:10:56 +02:00
examples Make QWebPage::zoomFactor accessible to PhantomJS scripts. 2012-06-08 11:05:54 +02:00
src Fix missing Makefiles in breakpad due to global .gitignore. 2012-06-12 09:40:31 -07:00
test Merge pull request #264 from jonleighton/multi_file_input 2012-06-12 08:42:23 -07:00
tools Integrate Google Breakpad crash reporter. Linux only for now. 2012-06-05 23:08:16 +01:00
website Moved to gh-pages branch. 2012-04-11 00:44:40 -07:00
.gitignore Integrate Google Breakpad crash reporter. Linux only for now. 2012-06-05 23:08:16 +01:00
ChangeLog More changes for 1.5. 2012-03-20 17:52:31 -07:00
LICENSE.BSD Long live PhantomJS! 2010-12-26 19:49:33 -08:00
README.md Switched link for GhostDriver, since GitHub page appears to be missing. 2012-06-07 17:47:22 -03:00
build.sh Compile the breakpad client in directly. 2012-06-10 21:42:43 +01:00
phantomjs.pro Import the old, working prototype. 2010-12-26 20:15:19 -08:00

README.md

PhantomJS - Scriptable Headless WebKit

PhantomJS (www.phantomjs.org) is a headless WebKit scriptable with JavaScript or CoffeeScript. It is used by hundreds of developers and dozens of organizations for web-related development workflow.

The latest stable release is version 1.5 (codenamed "Ghost Flower"). Follow the official Twitter stream @HeadlessPhantom to get the frequent development updates.

PhantomJS is created and maintained by Ariya Hidayat (Twitter: @ariyahidayat), with the help of many contributors.

Use Cases

  • Headless web testing. Lightning-fast testing without the browser is now possible! Various test frameworks such as Jasmine, Capybara, QUnit, WebDriver, YUI Test, BusterJS, FuncUnit, Robot Framework, and many others are supported.

  • Site scraping. Access and manipulate webpages with the standard DOM API, or with usual libraries like jQuery.

  • Page rendering. Capture the full contents, even with SVG and Canvas, to an image. Build server-side web graphics apps, from a screenshot service to a vector chart rasterizer.

  • Network monitoring. Monitor network activity, track resource loading, perform load-balancing tests, verify contents optimization, and many others.

Features

  • Multiplatform, available on major operating systems: Windows, Mac OS X, Linux, other Unices.
  • Fast and native implementation of web standards: DOM, CSS, JavaScript, Canvas, SVG. No emulation!
  • Pure headless (X11) on Linux, ideal for continuous integration systems. Also runs on Amazon EC2.
  • Easy to install: Download, unpack, and start having fun in just 5 minutes.

Ecosystem

PhantomJS needs not be used only as a stand-alone tool. Check also some excellent related projects:

  • CasperJS enables easy navigation scripting and common high-level testing.
  • Poltergeist allows running Capybara tests headlessly.
  • Guard::Jasmine automatically tests Jasmine specs on Rails when files are modified.
  • GhostDriver complements Selenium tests with a PhantomJS WebDriver implementation.
  • PhantomRobot runs Robot Framework acceptance tests in the background via PhantomJS.

and many others companion projects.

Questions?