javascript - 为什么 Phantomjs 不适用于此站点?
问题描述
我是 phantomjs 的新手,我正在使用 version 进行测试2.5.0-development
。我使用的脚本screen.js
适用于
http://phantomjs.org和https://google.com
但不适用于https://globo.com和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 并且它有效。问题似乎是版本。
解决方案
正如 phantomjs 页面 - http://phantomjs.org/中提到的- PhantomJS 开发已停止,此时它已经过时了。PhantomJS 基本上相当于一个 6-7 岁的浏览器,不支持很多当前的 JS/CSS(let、const、flexbox、grid layout 等),并且有在不支持的 JS 功能时不报错的坏习惯(likelet
或const
)在页面的资产中使用,而只是忽略那些 JS 文件。切换到像无头 Chrome 这样更现代的东西会好得多。
推荐阅读
- flutter - 如何从代表飞镖图像的无符号 8 字节整数列表中计算亮度?
- reactjs - 首次登录后反应不重定向。但是在强制重定向并再次执行登录操作后重定向
- android-studio - 按下手机后如何关闭Android应用程序
- javascript - 如何为 3 个函数实现 Javascript 承诺?
- python - 如何使用golang从重定向的url获取响应内容
- pdf - 在 AutoCAD 中将 dwg 和 dxf 文件批量打印为 pdf
- database - 数据库复制 - 更改数据库上下文
- python - 形状检测
- python - 将一个无量纲数除以一个有单位的数
- cassandra - 根据时间范围删除 Cassandra 表中的记录