为什么 Phantomjs 不适用于此站点?

Why does Phantomjs not work with this site?

我是 phantomjs 的新手,我正在使用版本 2.5.0-development 进行测试。我使用了脚本 screen.js 它与 http://phantomjs.org and https://google.com 但不适用于 https://globo.com and https://uol.com.br 我不明白我做错了什么没有出现错误。

screen.js

var page = require('webpage').create();
page.open('https://www.globo.com', function() {
  page.render('globo.png');
  phantom.exit();
});

编辑: 我尝试了旧版本 2.1.1 并且它有效。好像是版本问题

我想您在页面加载前必须稍等片刻。尝试添加一个设置超时,例如:

var page = require('webpage').create();
page.open('https://www.globo.com', function() {
  setTimeout(function(){
     page.render('globo.png');
     phantom.exit();
  }, 5000); // Change timeout as required to allow sufficient time 
});

如 phantomjs 页面所述 - http://phantomjs.org/ - PhantomJS 开发已停止,此时它已经过时了。 PhantomJS 基本上相当于一个 6-7 岁的浏览器,不支持很多当前 JS/CSS(let、const、flexbox、网格布局等),并且有不支持时不引发错误的恶习JS 功能(如 letconst)用于页面的资产中,而只是忽略那些 JS 文件。切换到像 headless Chrome.

这样更现代的东西会更好