URLからウェブサイトのリモートスクリーンショットを取得するにはどうすればよいですか?

c# html html-agility-pack multithreading webpage-screenshot

質問

だから私はアプリケーションがあります:

  1. SQLからn個のリンクを取る

  2. リンクごとに新しいスレッドを作成します。

  3. 各スレッドのHTML-Agility-PackでこのWebサイトのHTMLコードを取得する

  4. SQL(画像サイズ、ページサイズ、単語数、単語など)にデータを保存し、このプロセスを日付とともに保存します

これはウェブサイト上のデータをチェックして、以前にアップロードされた画像のタイプミスや問題などの変更があるかどうかを確認し、各ページのスクリーンショットやサムネイルを追加したいのです。スレッドごとにページ全体のスクリーンショットを取得するにはどうすればよいですか?

人気のある回答

面白いアプリのようだ。既にURL全体のHTMLを取得しているので(インターネット接続が可能なマシン/サーバー上でアプリケーションが実行されていると仮定します)

あなたはこれを行うことができる3つの方法があります(より多くの実際に)。

  1. スレッドで - System.Windows.Forms.Formオブジェクトを作成し、Webブラウザコントロールを子コントロールのリストに追加します(Dock = Fill)。ブラウザをURLに移動させます。ナビゲーションが完了したら、WinFormsダイアログのスクリーンショットを撮ってください。
  2. スレッド起動のクロム/ IE Webブラウザで、Urlをコマンドライン引数として渡します。いつかスレッドで待ってください(レンダリングが終わるときを知る良い方法はありません)。スクリーンショットを撮る。
  3. スレッドで - セレン型の.net互換ライブラリを使用してください。これはWeb UIテストの自動化を行い、ステップ#2を実行するのに役立ちます。この方法を使用すると、Webブラウザをより細かく制御できます。


Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ