PhantomJS

不依赖浏览器的web全栈

PhantomJS是一个自带JavaScript API的无头WebKit脚本。 它对各种web标准有快速原生化的支持,包括DOM处理、CSS选择器、JSON、Canvas和SVG。

下载 v2.1 快速上手

// 简单的 Javascript 例子

console.log('Loading a web page');
var page = require('webpage').create();
var url = 'http://phantomjs.org/';
page.open(url, function (status) {
  //Page is loaded!
  phantom.exit();
});
      

社区:

PhantomJS 为以下情况提供解决方案

网站无头测试

使用诸如Jasmine、QUnit、Mocha、Capybara、WebDriver等框架进行功能测试
了解更多

网页截屏

以编程方式捕获web内容,包括SVG和Canvas。 使用缩略图预览创建网站截图。
了解更多

页面自动化

使用标准DOM API,或者类似像jQuery库访问和操作网页。
了解更多

网络监控

可将监视页面导出为标准的HAR文件。使用YSlow和Jenkins自动化性能分析。
了解更多

以下开源项目的测试工作流程中使用了PhantomJS:
Bootstrap, CodeMirror, Ember.js, jQuery Mobile, Less.js, Modernizr, YUI3, and 更多.

Fork PhantomJS on GitHub