phantomJs页面截图

因为phantomjs使用了一个真正的渲染引擎WebKit,它能截取一个web页面的真实影像,这是因为phantomjs能够折射出WEB页面上的任何东西,包括html,css,svg和Canvas等。

 

新建一个JS文件,baidu.js。

// 写入以下内容
var page = require("webpage").create(); // 设置地址变量 var url='https://www.baidu.com' page.open(url,function(){ // 将该页面保存成图片 page.render("test.jpg"); phantom.exit(); })

执行:
phantomjs baidu.js

  官方提供了一个更完整的将网页保存为图片的JS示例,文件名为rasterize.js ,在JS目录下的子目录examples下面。

  执行方法:phantomjs rasterize.js http://ariya.github.io/svg/tiger.svg tiger.png

 

当然你也可以通过page的属性来改变视口的大小

var page = require("webpage").create();
// 视口的尺寸就是无头浏览器的真正大小
page.viewportSize = {width:1024,height:768};
// clipRect 是要获取的页面部分大小
page.clipRect = {top:0,left:0,width:1024,height:768};

page.open("http://example.com/",function(){
	page.render("github.png");
	phantom.exit();
});

  

 

posted on 2017-01-20 12:02  孔扎根  阅读(582)  评论(0编辑  收藏  举报

导航