PhantomJS加载空白页面并运行脚本

时间:2013-06-21 17:27:44

标签: phantomjs

是否可以加载空白页面并在页面上执行一些javascript?如果是这样,怎么样?例子将不胜感激。

3 个答案:

答案 0 :(得分:1)

PhantomJS需要一个DOM,并且不会出现在空文件中。您需要为页面创建至少此结构,以便在页面上执行JavaScript

<html>
    <head>
        <!-- JavaScript goes here !-->
    </head>
    <body>
    </body>
</html>

答案 1 :(得分:1)

我其实是在寻找这样的东西:

 var page = require('webpage').create();
 page.open('about:blank', function(status) {
    page.evaluate(function() {
       //My script here.         
    });
    phantom.exit();
});

答案 2 :(得分:1)

尝试使用page.setContent

http://phantomjs.org/api/webpage/method/set-content.html

var webPage = require('webpage');
var page = webPage.create();
var expectedContent = '<html><body><div>' + yourScript + '</div></body></html>';
var expectedLocation = 'http://www.phantomjs.org/';
page.setContent(expectedContent, expectedLocation, function(status) {
   if(status === success) {
       page.evaluate();
   } else {
       //do something
   }
});