Casperjs不适用于debian和ubuntu os,获取knockoutjs数据绑定标记的innerHTML。它适用于Windows

时间:2016-10-31 14:57:56

标签: linux windows knockout.js casperjs

我正在写一个casperjs脚本。它提取span标记的文本,该内容由knockoutjs data-bind创建。我的代码在windows上完美运行,但它不适用于linux(在debian或ubuntu上)。如果我在txt文件中编写this.getHTML(),则不会在DOM中加载所有数据绑定元素。它们仅在脚本标记中显示为数组。 我的幻影版本是2.1.1。我曾尝试使用Casperjs 1.1.0-beta3和主分支,但没有成功。有人能帮我吗?我需要使用debian os。

HTML标记

<span class="product-name" data-bind="visible: nameLabelVisible(), 
text: selectedNameLabel(), css: { disabled: isDisabled }">Dog</span>

Casperjs Script

var url='http://exampleurl.com';
var selector='span.product-name';
var casper = require('casper').create({
    pageSettings: {
        webSecurityEnabled:false,
        loadImages:  true,       
        loadPlugins: true,  
        javascriptEnabled: true
    },
});
casper.start(url);
casper.wait(5000);
casper.then(function(){
    var texto = this.evaluate(function(selector){
        var s = document.querySelector(selector).innerHTML;
        return s;
     }, selector);
    this.echo("result: " + texto);  
});

casper.run(function() {
    this.exit();
}); 

结果:

result: null

0 个答案:

没有答案