C# で HTML を読み込む方法

HTML の読み込みは、Web 開発、Web ページのレンダリング、データ抽出、コンテンツ管理、ドキュメント処理、テストなどを含むさまざまな Web タスクの基本的な操作です。 Aspose.HTML for .NET ライブラリは、HTML をロードし、将来の操作のために HTMLDocument オブジェクトを初期化する HTMLDocument() コンストラクターのセットを備えた HTMLDocument クラスを提供します。 HTML ドキュメントは、ファイルまたは URL からロードでき、文字列またはメモリ ストリームから作成およびロードできます。それでは、HTML を読み込む方法を見てみましょう。

まず、プロジェクトに Aspose.HTML for .NET がインストールされていることを確認してください。このライブラリのインストールプロセスは比較的簡単です。次のコマンドを使用して、NuGet パッケージ マネージャー コンソール経由でインストールできます。


Aspose.HTML for .NET をインストールする

Install-Package Aspose.HTML

ファイルから HTML をロードする

ファイルから HTML をロードすることは、既存の HTML ファイル、テンプレート、または HTML 形式で保存されたデータを操作するための良い開始点です。既存の HTML ファイルをファイルからロードし、作業して保存する必要がある場合は、次のコード スニペットが役に立ちます。

  1. アドレス (ローカル ドキュメント パス) から HTML ドキュメントをロードする HTMLDocument(address) コンストラクターを使用して、ファイルから HTML ドキュメントをロードします。
  2. Save() メソッドを使用してHTMLファイルを保存します。

Aspose.HTML for .NET ライブラリは、ファイルから HTML ドキュメントをロードできるようにする一連のコンストラクターを提供します。たとえば、 HTMLDocument(address,configuration) は、指定された環境構成設定を持つアドレスから HTML ドキュメントを読み込みます。詳細については、API リファレンス HTMLDocument の章を参照してください。


ファイルから HTML を読み込むための C# コード

using System.IO;
using Aspose.Html;
...

    // Prepare a file path
	string documentPath = Path.Combine(DataDir, "sprite.html");

	// Initialize an HTML document from the file
	using (var document = new HTMLDocument(documentPath))
	{
		// Work with the document

		// Save the document to a disk
		document.Save(Path.Combine(OutputDir, "sprite_out.html"));
	}

URLからHTMLをロードする

URL から HTML をロードすると、Web ページから情報を抽出する必要がある場合に便利です。 URL から HTML を直接ロードできます。

  1. HTMLDocument(Url) コンストラクターを使用して、URL から HTML ドキュメントを読み込みます。指定された環境構成設定を使用して URL から HTML をロードする場合は、 HTMLDocument(Url,configuration) を使用できます。
  2. OuterHTM プロパティを使用して、ドキュメントの完全な HTML コンテンツを取得します。これには、HTML 要素自体を含むドキュメント全体の HTML が含まれます。

HTML ドキュメントをローカル ドライブに保存する必要がある場合は、 Save() メソッドを使用します。


URL から HTML をロードする C# コード

using System.IO;
using Aspose.Html;
...

	// Load a document from 'https://docs.aspose.com/html/net/creating-a-document/' web page
	using (var document = new HTMLDocument("https://docs.aspose.com/html/net/creating-a-document/"))
	{
		var html = document.DocumentElement.OuterHTML;

		// Write the document content to the output stream
		Console.WriteLine(html);
	}

文字列からHTMLをロードする

文字列からの HTML の読み込みは、HTML コンテンツを操作し、非構造化 HTML 文字列を操作、解析、または表示できる構造化ドキュメントに変換できるようにする重要な機能です。

  1. まず、HTML ドキュメントのコードを準備します。
  2. HTMLDocument(content,baseUri) コンストラクターを使用して、指定されたbaseUri の文字列コンテンツから HTML ドキュメントを初期化します。
  3. Save() メソッドを使用してHTMLファイルを保存します。

文字列から HTML をロードする C# コード

using System.IO;
using Aspose.Html;
...

	// Prepare HTML code
    var html_code = "<p>Learn how to load HTML</p>";

    // Initialize a document from the string variable
    using (var document = new HTMLDocument(html_code, "."))
    {
        // Save the document to a disk
        document.Save(Path.Combine(OutputDir, "load-html-from-string.html"));
    }

メモリ ストリームから HTML をロードする

ストリームから HTML をロードすると、メモリ効率を向上させたり、メモリ内データを操作したりするのに役立ちます。次の C# コードは、MemoryStream から HTML を読み込み、Aspose.HTML for .NET を使用してファイルに保存する方法を示しています。

  1. MemoryStreamStreamWriterのオブジェクトを初期化します。 StreamWriter は、HTML コードを MemoryStream に書き込むために使用されます。
  2. Write() メソッドを使用して、HTML コードを MemoryStream に書き込みます。
  3. Flush() を呼び出してバッファリングされたデータがストリームに書き込まれることを確認し、Seek(0, SeekOrigin.Begin) を使用してストリームの位置を先頭に設定します。 HTMLDocument はストリーム内の現在の位置からコンテンツを読み取るため、これは重要です。
  4. HTMLDocument(content,baseUri) コンストラクターを使用して、MemoryStream から HTMLDocument を初期化します。 HTMLDocument のインスタンスは、MemoryStream オブジェクトと baseUri をパラメータとして渡すことによって作成されます。
  5. Save() メソッドを使用して、HTML ファイルをローカル ドライブに保存します。

メモリ ストリームから HTML をロードする C# コード

using System.IO;
using Aspose.Html;
...

    // Create a memory stream object
	using (var mem = new MemoryStream())
	using (var sw = new StreamWriter(mem))
	{
		// Write the HTML code into the memory object
		sw.Write("<p>Load HTML from a memory stream</p>");

		// It is important to set the position to the beginning, since HTMLDocument starts the reading exactly from the current position within the stream
		sw.Flush();
		mem.Seek(0, SeekOrigin.Begin);

		// Initialize a document from the string variable
		using (var document = new HTMLDocument(mem, "."))
		{
			// Save the document to a local disk
			document.Save(Path.Combine(OutputDir, "load-html-from-stream.html"));
		}
	}

Aspose.HTML API の詳細については、 ドキュメント ガイドを参照してください。 Create HTML Document の記事では、ファイル、URL、ストリームからドキュメントをロードする方法、または最初からドキュメントを作成する方法について説明しています。 Edit HTML Document ドキュメント記事では、Aspose.HTML for .NET API を使用してドキュメント オブジェクト モデルを読み取りまたは編集する方法に関する基本情報を提供します。 HTML 要素の作成方法とその操作方法、つまり新しいノードの挿入、削除、既存ノードのコンテンツの編集によってドキュメントを変更する方法を学びます。