0

javascript で保護されているサイトから自動的にデータを取得するための phantomjs を学習しようとしています。

リンクをクリックする必要があります。この質問に従って、この投稿に従って、カスタム関数「eventFire」をphantomjsファイルに追加しようとしました。しかし、何を試しても出力されます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);
  }
}
4

1 に答える 1

1

を使用していた場合はpage.evaluate、関数を引数として渡すことができます。

page.evaluate(function(eventFire_fn) {
    // click your 'element'
    eventFire_fn(element, 'click');
}, eventFire);
于 2013-12-27T08:49:07.230 に答える