- 檔案系統模組
- 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。有許多屬性和方法可以幫助頁面自動化並完成許多其他事情。你可以參考網頁模組,其中對屬性和方法進行了詳細解釋。
廣告