Comment charger du HTML en C#

Le chargement HTML est une opération fondamentale pour diverses tâches Web, notamment le développement Web, le rendu de pages Web, l’extraction de données, la gestion de contenu, le traitement de documents, les tests, etc. La bibliothèque Aspose.HTML for .NET fournit une classe HTMLDocument avec un ensemble de constructeurs HTMLDocument() qui chargent du HTML et initialisent un objet HTMLDocument pour une manipulation future. Les documents HTML peuvent être chargés à partir d’un fichier ou d’une URL et peuvent être créés et chargés à partir d’une chaîne ou d’un flux mémoire. Voyons donc comment charger du HTML!

Tout d’abord, assurez-vous que Aspose.HTML pour .NET est installé dans votre projet. Le processus d’installation de cette bibliothèque est relativement simple. Vous pouvez l’installer via la console NuGet Package Manager à l’aide de la commande suivante:


Installer Aspose.HTML pour .NET

Install-Package Aspose.HTML

Charger du HTML à partir d'un fichier

Le chargement de HTML à partir d’un fichier est un bon point de départ pour travailler avec des fichiers HTML, des modèles ou des données existants stockés au format HTML. Si vous devez charger un fichier HTML existant à partir d’un fichier, travailler dessus et l’enregistrer, l’extrait de code suivant vous aidera:

  1. Chargez un document HTML à partir d’un fichier à l’aide du constructeur HTMLDocument(address) qui charge le document HTML à partir d’une adresse (chemin d’accès local au document).
  2. Enregistrez le fichier HTML à l’aide de la méthode Save() .

La bibliothèque Aspose.HTML pour .NET propose un ensemble de constructeurs qui vous permettent de charger un document HTML à partir d’un fichier. Par exemple, HTMLDocument(address, configuration) charge un document HTML à partir d’une adresse avec les paramètres de configuration d’environnement spécifiés. Pour plus d’informations, veuillez consulter le chapitre Référence de l’API HTMLDocument .


Code C# pour charger du HTML à partir d'un fichier

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"));
	}

Charger du HTML à partir d'une URL

Le chargement de HTML à partir d’une URL peut être utile lorsque vous devez extraire des informations d’une page Web. Vous pouvez charger du HTML directement à partir d’une URL:

  1. Chargez un document HTML à partir d’une URL à l’aide du constructeur HTMLDocument(Url) . Vous pouvez utiliser le HTMLDocument(Url, configuration) si vous souhaitez charger du HTML à partir d’une URL avec les paramètres de configuration d’environnement spécifiés.
  2. Utilisez la propriété OuterHTM pour obtenir le contenu HTML complet du document. Cela inclut le code HTML de l’ensemble du document, y compris l’élément HTML lui-même.

Si vous devez enregistrer le document HTML sur votre lecteur local, utilisez la méthode Save() .


Code C# pour charger du HTML à partir d'une URL

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);
	}

Charger du HTML à partir d'une chaîne

Le chargement de HTML à partir d’une chaîne est une fonctionnalité importante qui vous permet de manipuler du contenu HTML et de convertir des chaînes HTML non structurées en un document structuré que vous pouvez manipuler, analyser ou afficher:

  1. Tout d’abord, préparez le code d’un document HTML.
  2. Utilisez le constructeur HTMLDocument(content, baseUri) pour initialiser un document HTML à partir d’un contenu de chaîne avec baseUri spécifié.
  3. Enregistrez le fichier HTML à l’aide de la méthode Save() .

Code C# pour charger du HTML à partir d'une chaîne

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"));
    }

Charger du HTML à partir d'un flux mémoire

Le chargement de HTML à partir d’un flux est utile pour l’efficacité de la mémoire ou pour travailler avec des données en mémoire. Le code C# suivant montre comment charger du HTML à partir d’un MemoryStream et l’enregistrer dans un fichier à l’aide d’Aspose.HTML pour .NET:

  1. Initialisez les objets de MemoryStream et StreamWriter. StreamWriter est utilisé pour écrire le code HTML dans MemoryStream.
  2. Écrivez le code HTML dans MemoryStream en utilisant la méthode Write().
  3. Appelez Flush() pour vous assurer que toutes les données mises en mémoire tampon sont écrites dans le flux, et utilisez Seek(0, SeekOrigin.Begin) pour définir la position du flux au début. Ceci est important car un HTMLDocument lit le contenu à partir de la position actuelle dans le flux.
  4. Initialisez le HTMLDocument à partir du MemoryStream à l’aide du constructeur HTMLDocument(content, baseUri) . L’instance de HTMLDocument est créée en passant l’objet MemoryStream et le baseUri comme paramètres.
  5. Enregistrez le fichier HTML sur un lecteur local à l’aide de la méthode Save() .

Code C# pour charger du HTML à partir d'un flux mémoire

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"));
		}
	}

Pour en savoir plus sur l’API Aspose.HTML, veuillez consulter notre guide documentation . Dans l’article Create HTML Document , vous trouverez des informations sur la façon de charger un document à partir d’un fichier, d’une URL et d’un flux ou de le créer à partir de zéro. L’article de documentation Edit HTML Document vous donne des informations de base sur la façon de lire ou de modifier le modèle objet de document à l’aide d’Aspose.HTML pour l’API .NET. Vous découvrirez comment créer des éléments HTML et comment travailler avec eux : modifier le document en insérant de nouveaux nœuds, en supprimant ou en modifiant le contenu des nœuds existants.