PhantomJS借助其网页模块API,可以操作网页并执行DOM操作,点击按钮等操作.
从页面获取图像
以下程序显示了如何使用PhantomJS从页面获取图像.
var wpage = require('webpage').create();wpage.onConsoleMessage = function(str) { console.log(str.length);}wpage.open("http://phantomjs.org", function(status) { console.log(status); var element = wpage.evaluate(function() { var imgdata = document.querySelectorAll('img'); var imgsrc = []; if (imgdata) { for (var i in imgdata) { imgsrc.push(imgdata[0].src); } } return imgsrc; }); console.log(JSON.stringify(element));});
上述程序生成以下输出.
Success ["http://phantomjs.org/img/phantomjslogo.png","http://phantomjs.org/img/phantom js-logo.png","http://phantomjs.org/img/phantomjslogo.png","http://phantomjs.org /img/phantomjs-logo.png"]
可以使用 injectJS网页方法在页面中包含外部JavaScript.有许多属性和方法,可以帮助页面自动化和许多其他事情.您可以参考网页模块详细说明属性和方法.