1

HTML を WebPage オブジェクトにロードし、「onLoadFinished」イベントをリッスンしています。onLoadFinished が発生すると、Web ページを png にレンダリングします。

私が見ている問題は、http://example.com/image.pngのような SRC 属性を使用すると HTML コンテンツ内の特定の画像が一貫してレンダリングされるが、 https://example.comを使用すると一貫してレンダリングされないことです。 /image.pngを SRC 属性に追加します (ブラウザー経由でアクセスすると、SSL と非 SSL の両方のフレーバーが適切に提供されます)。

レンダリングの問題はタイミングの問題によるものですか? 画像が読み込まれる前に onLoadFinished を起動できますか? もしそうなら、PNGにレンダリングする前に画像が読み込まれたことを確認するきれいな方法はありますか?

4

1 に答える 1

2

PhantomJS で似たようなことに気付きました。複数のページでリンクをスクレイピングすると、onLoadFinished-event が 2 回発生することがありました。すべてのリソースが提供される前に、1 つが早すぎました。私の回避策は、onResourceReceived でページのステータス コードを待機し、その後、適切なページが起動したときにのみ "onLoadFinished" を実行することでした (その 1 つの早期呼び出しを拒否します)。

于 2012-09-10T10:40:26.137 に答える