-2

私は自分のウェブサイトの改ざんを検出する方法に取り組んでいます。ウェブサイト全体をクロールし、ページごとにスクリーンショットを撮るか、ウェブサイトを画像としてレンダリングし、ページが最後にチェックされたときと比較します。

言語に関係なく、Web ページ全体 (HTML、CSS、JS) をスクリーンショットのような画像に変換する方法を探しています (ただし、Java、Python、または C# が望ましいです)。

サーバー上で高速で使用できるようにする必要があります。

私はすでにJavaで次のことを試しました:

  • CssBox ですが、レンダリングが十分ではありません (JS なし)
  • Selenium Web Driverですが、遅すぎて(Firefoxを開く時間、ページを表示する時間など...)、GUIなしでは使用できません

解決策は Web エンジンの一種のラッパーになると思いますが、それについては何も見つかりませんでした (少なくとも Java では)。PhantomJS がこのニーズに適していると言われましたが、正しいですか?

完璧な結果は、次のようなものを作成することです: http://www.page2images.com/home

4

4 に答える 4

0

GUI がなければ、おそらくこのようなことはできません。

GUI や関連事項にあまり詳しくない場合は、JavaFX Webviewを使用して、次のコードを使用してノードのスクリーンショットを撮ることができます。

WritableImage image = webView.snapshot(null, null);
BufferedImage bufferedImage = SwingFXUtils.fromFXImage(image, null);
....

参考文献:

WebView#スナップショット

SwingFXUtils#fromFXImage

于 2015-03-17T15:41:49.737 に答える
0

スクリプトまたはphantomjsなどのコマンド ライン オプションで制御できるブラウザを使用します。ドキュメントには、URL からスクリーンショットを作成する方法の例が含まれています。

于 2015-03-17T15:37:44.313 に答える
0

セレンはあなたの最善の策です。ページのコンテンツ (JS ライブラリなど) によっては時間がかかる場合がありますが、cron を介して毎晩実行するスクリプトを使用してこれを自動化できます。またはスクリーンを使用します。

これには、アサーションとシミュレートされたマウス イベントの豊富な言語と、一連のページの状態を回帰テストおよび/または監視する方法があります。

幸運を。

于 2015-03-17T15:41:25.917 に答える