我正在尝试学习phantomjs,以便自动从现在受javascript保护的网站获取数据。
我需要点击一个链接;根据{{3}},我尝试将自定义函数“eventFire”添加到我的phantomjs文件this question。但无论我尝试过什么,它都会输出ReferenceError: Can't find variable: eventFire
有人可以告诉我正确的方法吗?因为我没有看到它,谢谢你。
我尝试完全复制这个功能但是没有用,所以我尝试了同样的结果:
eventFire = function(el, etype){
if (el.fireEvent) {
(el.fireEvent('on' + etype));
} else {
var evObj = document.createEvent('Events');
evObj.initEvent(etype, true, false);
el.dispatchEvent(evObj);
}
}
答案 0 :(得分:1)
如果您使用page.evaluate
,则可以将该函数作为参数传递。
page.evaluate(function(eventFire_fn) {
// click your 'element'
eventFire_fn(element, 'click');
}, eventFire);