- 文件系统模块
- PhantomJS - 属性
- PhantomJS - 方法
- 系统模块
- PhantomJS - 属性
- Web 服务器模块
- PhantomJS - 属性
- PhantomJS - 方法
- 其他
- 命令行界面
- PhantomJS - 屏幕截图
- PhantomJS - 页面自动化
- PhantomJS - 网络监控
- PhantomJS - 测试
- PhantomJS - REPL
- PhantomJS - 示例
- PhantomJS 有用资源
- PhantomJS - 快速入门
- PhantomJS - 有用资源
- PhantomJS - 讨论
PhantomJS - 页面自动化
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。有许多属性和方法可以帮助页面自动化并完成许多其他事情。你可以参考网页模块,其中对属性和方法进行了详细解释。
广告