我正在尝试使用phantomjs从网站呈现javascript评估的源代码。但每次我尝试我只获得源代码(类似于浏览器的视图源)。我真正想要的是javascript评估代码(我们从google chrome浏览器的inspect元素中看到的)。我的代码如下所示:
var page = require('webpage').create();
page.open('http://www.google.com/', function (s) {
console.log(page.content);
phantom.exit();
});
我在这里做错了吗?
答案 0 :(得分:4)
这对我有用:
window.setTimeout(function () {
page.render(output);
phantom.exit();
}, 1000);
答案 1 :(得分:3)
可能是的。在许多情况下,网页上的JavaScript代码不会立即执行。您可以通过稍微延迟来考虑这一点,例如:在获取page.content的值之前使用setTimeout。