从this开始,我已经重写了我的脚本,但无法访问我执行数据扫描的功能。结果我的对象为null。
我如何确保达到此功能? 我如何填充对象? (注意我的对象和填充它的方式是基于an earlier post的讨论,但如果我在下面的脚本中发现任何错误,请告诉我。)
错误输出:
ReferenceError:找不到变量:angular(不知道这是什么 意思是......我现在无视了) http://stage.inc.com/js/Inc5000ListApp.js?UPDATE1:2
http://www.inc.com/inc5000/index.html:2485
了解公司 Inc. 5000 | Inc.com(这是标题,正在打印)
空 (该对象为null,我不知道为什么??实际上是函数 没有被访问,但我怎么能纠正这个......)
代码
var webPage = require('webpage');
var page = webPage.create();
page.open('http://www.inc.com/inc5000/index.html', function(status) {
var title = page.evaluate(function(s) {
return document.querySelector(s).innerText;
}, 'title');
console.log(title);
page.injectJs('http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js');
var dataObj= page.evaluate(function() {
console.log('Reached scrapeData');
var DATA = [];
$('tr.ng-scope').each(function(){
var $tds = $(this).find('td');
DATA.push({
rank: $tds.eq(0).text(),
company: $tds.eq(1).text(),
growth: $tds.eq(2).text(),
revenue: $tds.eq(3).text(),
industry: $tds.eq(4).text()
});
});
console.log(DATA);
});
console.log(dataObj);
phantom.exit();
});