我是 Nightmare/PhantomJS 的新手,正在努力获取给定页面上所有标签的简单清单。在从源代码构建 PhantomJS 并手动安装 NodeJS、Nightmare 等之后,我在 Ubuntu 14.04 上运行,其他功能似乎按我的预期工作。
这是我正在使用的代码:
var Nightmare = require('nightmare');
new Nightmare()
.goto("http://www.google.com")
.wait()
.evaluate(function ()
{
var a = document.getElementsByTagName("*");
return(a);
},
function(i)
{
for (var index = 0; index < i.length; index++)
if (i[index])
console.log("Element " + index + ": " + i[index].nodeName);
})
.run(function(err, nightmare)
{
if (err)
console.log(err);
});
当我在“真实”浏览器中运行它时,我会得到页面上所有标签类型的列表(HTML、HEAD、BODY、...)。当我使用node GetTags.js运行它时,我只得到一行输出:
Element 0: HTML
我确定这是一个新手问题,但是我在这里做错了什么?