使用CasperJS,我想检索YouTube视频中有多少条评论。
var casper = require('casper').create();
casper.start('https://youtube.com/watch?v=I1HpEzxYHxE', function() {
this.echo(this.getTitle()); // test to see if page loaded correctly
var comments = this.evaluate(function() {
return document.querySelector('div.DJa').innerText;
});
this.echo(comments);
});
casper.run();
输出是:
Android Eclipse Tutorial #1 - Building an App From Scratch - YouTube
null
这是该YouTube视频源HTML的屏幕截图:
我希望得到选择器innerText
的{{1}}。
以下是该选择器的“属性”列表的屏幕截图:
该列表显示div.DJa
属性包含值innerText
,因此这是我的预期输出,而不是"ALL COMMENTS (49)"
。
任何人都可以解释为什么输出为null
和/或如何获得我预期的输出?
答案 0 :(得分:0)
您可以尝试以下代码:
casper.then(function(){
onapp_name = this.evaluate(function() {
return __utils__.findOne('#LXCType_name').getAttribute('value');
});
});
并回显onapp_name
变量......