phantomjs介绍-(js网页截屏、javascript网页解析渲染工具)
phantomjs 是一个基于js的webkit内核无头浏览器 也就是没有显示界面的浏览器,这样访问网页就省去了浏览器的界面绘制所消耗的系统资源,比较适合用于网络测试等应用 。利用这个工具,我们可以轻松的搭建一个接口用于获取我们想要的url的整页截屏。
PhantomJS is a headless WebKit with JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG.
PhantomJS is created by Ariya Hidayat.
官方网站:http://phantomjs.org/
使用教程:
首先到其官网下载最新版本的PhantomJS,现在的最新版本是1.7了。
写一个loading.js放到其同一个目录:
- #[root@mingming-dev bin]# cat loading.js
- var page = require('webpage').create(),
- address, output, size;
- if (phantom.args.length < 2 || phantom.args.length > 3) {
- console.log('Usage: rasterize.js URL filename');
- phantom.exit();
- } else {
- address = phantom.args[0];
- output = phantom.args[1];
- page.viewportSize = { 1024, height: 768 };
- page.open(address, function (status) {
- if (status !== 'success') {
- console.log('Unable to load the address!');
- } else {
- window.setTimeout(function () {
- page.render(output);
- phantom.exit();
- }, 200);
- }
- });
- }
现在的目录结构:
- [root@mingming-dev bin]# ls
- loading.js phantomjs
执行脚本:
- ./phantomjs loading.js http://weibo.com ./weibo.png
第三个参数就是需要截取的url,第四个参数是截取的图片存放的位置。
如何利用phantomjs做网页解析渲染工具。