2012-09-16 200 views
11

我刚下载并在我的机器上安装了phantomjs。我复制并粘贴下面的脚本到一个文件名为hello.js:如何使用phantomjs将控制台打印到控制台

var page = require('webpage').create(); 
var url = 'https://www.google.com' 

page.onLoadStarted = function() { 
    console.log('Start loading...'); 
}; 

page.onLoadFinished = function (status) { 
    console.log('Loading finished.'); 
phantom.exit(); 
}; 

page.open(url); 

我想打印完整的HTML源代码(在这种情况下,从谷歌网页)到文件或控制台。我该怎么做呢?

回答

46

花了一些时间阅读文档后,应该很明显。

var page = require('webpage').create(); 
page.open('http://google.com', function() { 
    console.log(page.content); 
    phantom.exit(); 
}); 
+0

是的,您的陈述是正确的。无论如何感谢您的答案。 – toom

+27

@toom:当然,因为他是phantomjs的创建者:) – bertie

+5

这会给dom中的html(它已经被javascript操作并且经历了某种程度的语法校正),而不是原始的未处理的html服务由服务器。有没有一种方法可以解决这个问题?也许从onResourceReceived? –