C# でウェブサイトから画像をダウンロードする

.NET 開発者は、ビジネス ソフトウェア用の一括画像ダウンローダーを開発できるようになりました。Aspose.HTML for .NET は、Web からプログラムで画像を抽出するための膨大なクラスとメソッドを提供する適切な画像抽出サービスです。さらに、この C# ライブラリを使用するための複雑なエコー システムは存在せず、C# で Web サイトから画像を簡単にダウンロードできます。さらに、この Aspose.HTML for .NET を使用して、グラフィック データとテキスト データを抽出できます。実装は こちら で確認できます。では、これ以上何も言わずにこのブログ投稿を始めましょう。

このガイドでは、次のセクションについて説明します。

  1. 画像抽出サービスのインストール
  2. C# でウェブサイトから画像をダウンロードする - コードサンプル
  3. オンラインデータ抽出ツール

画像抽出サービスのインストール

したがって、この C# API をインストールすることで、HTML ページをプログラムで解析できます。データ抽出に加えて、HTML ページを他の一般的なファイル形式に変換することもできます。したがって、マシンに .NET をインストールし、ダウンロード してこの画像抽出サービスをインストールするか、NuGet パッケージ マネージャーで次のコマンドを実行します。

PM> Install-Package Aspose.Html

インストールプロセスは非常に簡単ですが、何か問題がある場合は、こちらのインストール手順を参照してください。

画像抽出サービス

C# で Web サイトから画像をダウンロードする - コード サンプル

これで、Web から画像を抽出する機能をプログラムで実装できるようになりました。

次の手順は、C# で Web サイトから画像をダウンロードする方法を示しています。

  • HTMLDocument クラスのオブジェクトを初期化して、画像を抽出する Web ページを開きます。
  • GetElementsByTagName メソッドを呼び出して、すべての “img” 要素を収集します。
  • Select メソッドを呼び出して、相対画像 URL の個別のコレクションを作成し、絶対画像 URL を作成します。
  • すべての絶対画像 URL をループします。
  • RequestMessageクラスのオブジェクトを初期化して、画像リクエストメッセージを作成します。
  • Context.Network.Send(request) メソッドを呼び出して画像を抽出します。
  • 応答が成功したかどうかを確認し、WriteAllBytes メソッドを呼び出して画像をローカル ファイル システムに保存します。

次のコード サンプルは、一括画像ダウンローダーをプログラムで開発する方法を示しています。

using Aspose.Html;
using Aspose.Html.Net;

namespace AsposeHTML
{
    class HTML
    {
        // 画像抽出サービスを使用してウェブサイトから画像をダウンロードする
        static void Main(string[] args)
        {
            // 作業ディレクトリのパスを定義します。
            String dataDir = "/files/";
            // HTMLDocument クラスのオブジェクトを初期化して、画像を抽出する Web ページを開きます。 
            using var document = new HTMLDocument("https://blog.aspose.com/ja/tex/latex-mathematical-expressions-using-latex-to-image-api/");
            // すべて集める<img>GetElementsByTagName メソッドを呼び出して要素を取得します。 
            var images = document.GetElementsByTagName("img");
            // Select メソッドを呼び出して、相対画像 URL の個別のコレクションを作成し、絶対画像 URL を作成します。 
            var urls = images.Select(element => element.GetAttribute("src")).Distinct();
            var absUrls = urls.Select(src => new Url(src, document.BaseURI));
            // すべての絶対画像 URL をループします。 
            foreach (var url in absUrls)
            {
                // RequestMessage クラスのオブジェクトを初期化して、イメージ要求メッセージを作成します。
                using var request = new RequestMessage(url);
                // Context.Network.Send(request) メソッドを呼び出して画像を抽出します。 
                using var response = document.Context.Network.Send(request);
                // 応答が成功したかどうかを確認し、WriteAllBytes メソッドを呼び出して、イメージをローカル ファイル システムに保存します。
                if (response.IsSuccess)
                {
                    File.WriteAllBytes(Path.Combine(dataDir, url.Pathname.Split('/').Last()), response.Content.ReadAsByteArray());
                }
            }
        }
    }
}

出力は以下の画像で確認できます。

ウェブから画像を抽出する

オンラインデータ抽出ツール

Aspose.HTML を搭載した オンライン ツールがあります。ただし、このエンタープライズ レベルのオンライン データ抽出ツールにはユーザー フレンドリーな UI が装備されており、ワンクリックでデータ抽出を実行できます。さらに、Web ベースであり、アカウントの作成は必要ありません。したがって、Web ブラウザーでこのツールを開いて、重要なデータの抽出を開始するだけです。実際、このオンライン ツールには近い将来さらに機能が追加される予定です。

オンラインデータ抽出ツール

ウェブから画像を抽出する - 無料ライセンスを取得

無料の一時ライセンスを取得して、評価制限なしでこの画像抽出サービスを試すことができます。

結論

このブログ投稿はこれで終わりです。C# でプログラム的に Web サイトから画像をダウンロードする方法を学んでいただければ幸いです。さらに、一括画像ダウンローダーを開発するための手順とコード スニペットについても説明しました。さらに、Aspose.HTML for .NET を使用して C# で数行のコードを記述することで、Web から画像を抽出することもできます。したがって、使用方法と開発に関する包括的な ドキュメント を見つけることができます。さらに、API リファレンス は .NET 開発者にとっての出発点となります。

今後のブログ投稿については、aspose.com でご確認ください。

ヘルプが利用可能です

ご質問やご不明な点はフォーラムで共有できます。

よくある質問 – FAQ

URL から画像をダウンロードするにはどうすればよいですか?

Aspose.HTML for .NET を使用して、C# で Web サイトから画像をダウンロードできます。さらに、この画像抽出サービスを使用してこの機能を実現する方法については、この リンク を参照してください。

オンラインでデータを抽出するにはどうすればいいですか?

このオンラインデータ抽出ツールを使用すると、Webサイトからテキストデータとグラフィックデータを堅牢かつ効率的に抽出できます。

参照