Node.js page.evaluate返回空文档

Node.js page.evaluate返回空文档,node.js,phantomjs,Node.js,Phantomjs,下面是phantomjs代码 page.open('https://onli**************uickpay.html', function (status) { if (status !== 'success') { console.log('Unable to access network') } else { console.log('internet is working'); var ua = page.eval

下面是phantomjs代码

page.open('https://onli**************uickpay.html', function (status) {
    if (status !== 'success') {
        console.log('Unable to access network')
    } else {
        console.log('internet is working');
        var ua = page.evaluate(function (loanID) {
            var loanIDSplit = loanID.split('/');
            document.getElementById("txtBranchCode").value = loanIDSplit[0];
            document.getElementById("txtType").value = loanIDSplit[1];
            document.getElementById("txtLoanNumber").value = loanIDSplit[2];
            document.getElementById("btnLoanNoSearch").click();
        }, loanID);

    console.log(util.inspect(document, false, null));
    setTimeout(function () {
        var html = page.evaluate(function () {
            var table = document.getElementById('tblQpLoanNo');
            table.getElementsByClassName('odd')[0].click();
            document.getElementById("LoNoPayButton").click();
            return document;
        });
        page.render('/home/ubuntu/github.png');
        console.log('is the value of document'+html);
    }, 3000);

    setTimeout( function (){
      var release_amount = page.evaluate(function () {
      var table = document.getElementById('tblQpPayment');
      var row = table.getElementsByClassName('odd')[0];
      var payableAmount = row.getElementsByTagName('td')[3].textContent;
      return payableAmount;
  });

     console.log("release amount value is "+release_amount);
     // system.stdout.write("$" + releaseAmount);
     // system.stdout.write("$" + loanID);
     phantom.exit();
}, 10000);
}
当上述代码运行时,记录的html值显示为null

它与macosx中的phantomjs完美配合,但当我将其部署到ubuntu服务器时,它就不起作用了。我确保我使用的是支持linux的phantomjs

第一页.evaluate工作正常,下一页在哪里.evaluate超时3秒后不工作,我在调试上浪费了足够的时间,最后在这里询问,如果有人有相同的问题或缺少一些信息,请询问我


文档为空的原因是什么,这意味着在评估html页面时出现了一些问题

您无法从
页面返回
文档

闭包、函数、DOM节点等将不起作用

如果要获取页面的整个html,请尝试
page.content
variable:

console.log(page.content);