对我知道那个。Phantomjs 不支持函数绑定。但也许我可以用别的东西,或者说page.open
不使用bind
?看起来还可以,但是有些网站
返回错误
TypeError: 'undefined' is not a function (evaluating 'b.bind(a)')
之后我写了一个简单的脚本,它只打开一个页面:
var address = phantom.args[0];
if(!address) phantom.exit(1);
page = require("webpage").create();
page.open(address, function(status){
setInterval(
function () {
console.log(
page.evaluate(function() {
return document.body.innerHTML.length;
})
)}, 200)
})
但错误仍然存在。错误不是主要问题,但问题是获取页面内容,因为错误后页面内容无法加载......
所以,我需要帮助。
附:问题网站是http://vkrushelnytskiy.wix.com/aaaa http://vkrushelnytskiy.wix.com/aaaa
有一个npm 包,为 phantomJS 缺少的 .bind 方法加载一个 polyfill https://www.npmjs.com/package/phantomjs-polyfill。为方便起见,请在此处复制安装说明,但请点击链接以获取任何更新。
安装
npm install --save-dev phantomjs-polyfill
Usage
require('phantomjs-polyfill')
与 Karma 一起使用将 polyfill 直接包含在 karma.conf 的文件列表中
...
files: [
'./node_modules/phantomjs-polyfill/bind-polyfill.js',
...
]
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)