0

ページイベントを送信しています:

page.sendEvent('click', 650, 430);

これにより、ajaxを介して要素を動的にロードするリンクをクリックします。この動的にロードされた要素に経由でアクセスするには遅すぎますpage.evaluateか?ページ上で動的に作成されたものでは、何も返すことができないようです。

4

2 に答える 2

0

これまでのところ、最も簡単で動的な方法は、ここで説明されているように、コンソールメッセージをキャッチすることですhttp://code.google.com/p/phantomjs/wiki/Interface#Callbacks

page.onConsoleMessage = function(msg) {
    console.log(msg);
};

バイナリデータを送信したい場合は、カスタムスクリプトをWebページに挿入することで何らかのパイプを使用することをお勧めします。

于 2012-06-17T21:27:06.830 に答える
0

window.setTimeoutpage.renderを使用してスナップショットを作成してみませんか?したがって、コードは次のように変更されます。

window.setTimeout(function() {
   page.sendEvent('click', 650, 430);
}, 5000);
window.setTimeout(function() {
   page.render('foo.png');
});

タイムアウトすると、ajax呼び出しが完了する機会が与えられます。レンダリングにより、ajax呼び出しが実行されたときにページがどのように表示されるかを確認できます。

于 2012-07-17T22:54:38.593 に答える