/phantomjs

Headless WebKit with JavaScript API

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

PhantomJS (www.phantomjs.org) is a headless WebKit with JavaScript API.

It has fast and native support for DOM handling, CSS selector, JSON, Canvas, and SVG.

PhantomJS is cross-platform, it can be compiled for Linux, Windows, FreeBSD, and Mac OS X. Refer to the build instructions for details.

Note: If you are on Mac OS X, read the notice before you start using brew or port to install Qt and/or PhantomJS.

PhantomJS scripts can be written in JavaScript or CoffeeScript.

See also quick start guide and more advanced examples which show various PhantomJS scripts, covering:

  • getting driving direction
  • showing weather forecast conditions
  • finding pizza in New York
  • looking up approximate location based on IP address
  • pulling the list of seasonal food
  • running regression tests from command line
  • producing PDF version of a Wikipedia article
  • rasterizing SVG to image

Do not forget to consult the concise API Reference.

PhantomJS is based on Qt. There are two implementations, using C++ and Python.

If you want to contribute, please read the Contribution Guide.