📜  PhantomJS-页面自动化

📅  最后修改于: 2020-10-21 05:38:36             🧑  作者: Mango


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 webpage方法可以在页面中包含外部JavaScript。有许多属性和方法,可以帮助页面自动化和完成许多其他事情。您可以参考网页模块,其中详细说明了属性和方法。