Como carregar HTML em C#

O carregamento de HTML é uma operação fundamental para várias tarefas da web, incluindo desenvolvimento web, renderização de páginas web, extração de dados, gerenciamento de conteúdo, processamento de documentos, testes e muito mais. A biblioteca Aspose.HTML for .NET fornece a classe HTMLDocument, que implementa um conjunto de construtores HTMLDocument() para inicializar um HTMLDocument. Documentos HTML podem ser carregados a partir de um arquivo ou URL e podem ser criados e carregados a partir de uma string ou fluxo de memória. Então, vamos ver maneiras de carregar HTML!

Primeiro, certifique-se de ter Aspose.HTML for .NET instalado em seu projeto. O processo de instalação desta biblioteca é relativamente simples. Você pode instalá-lo por meio do Console do Gerenciador de Pacotes NuGet usando o seguinte comando:


Instale Aspose.HTML for .NET

Install-Package Aspose.HTML

Carregar HTML de um arquivo

Carregar HTML de um arquivo é um bom ponto de partida para trabalhar com arquivos HTML, modelos ou dados existentes armazenados em formato HTML. Se você precisar carregar um arquivo HTML existente de um arquivo, trabalhar nele e salvá-lo, o seguinte trecho de código irá ajudá-lo:

  1. Carregue um documento HTML de um arquivo usando o construtor HTMLDocument(address) que carrega o documento HTML de um endereço (caminho do documento local).
  2. Salve o arquivo HTML usando o método Save() .

A biblioteca Aspose.HTML for .NET oferece um conjunto de construtores que permitem carregar documentos HTML de um arquivo. Por exemplo, o HTMLDocument(address, configuration) carrega um documento HTML de um endereço com definições de configuração de ambiente especificadas. Para obter mais informações, consulte o capítulo Referência da API HTMLDocument .


Código C# para carregar HTML de um arquivo

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

Carregar HTML de um URL

Carregar HTML de uma URL pode ser útil quando você precisa extrair informações de uma página web. Você pode carregar HTML diretamente de um URL:

  1. Carregue um documento HTML de uma URL usando o construtor HTMLDocument(Url) . Você pode usar HTMLDocument(Url, configuration) se quiser carregar HTML de uma URL com definições de configuração de ambiente especificadas.
  2. Utilize a propriedade OuterHTM para obter o conteúdo HTML completo do documento. Isto inclui o HTML de todo o documento, incluindo o próprio elemento HTML.

Se você precisar salvar o documento HTML em sua unidade local, use o método Save() .


Código C# para carregar HTML de um 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);
	}

Carregar HTML de uma string

Carregar HTML de uma string é um recurso importante que permite manipular conteúdo HTML e converter strings HTML não estruturadas em um documento estruturado que você pode manipular, analisar ou exibir:

  1. Primeiro, prepare o código para um documento HTML.
  2. Use o construtor HTMLDocument(content, baseUri) para inicializar um documento HTML a partir de um conteúdo de string com baseUri especificado.
  3. Salve o arquivo HTML usando o método Save() .

Código C# para carregar HTML de uma string

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

Carregar HTML de um fluxo de memória

Carregar HTML de um fluxo é útil para eficiência de memória ou para trabalhar com dados na memória. O código C# a seguir demonstra como carregar HTML de um MemoryStream e salvá-lo em um arquivo usando Aspose.HTML for .NET:

  1. Inicialize os objetos MemoryStream e StreamWriter. StreamWriter é usado para escrever o código HTML no MemoryStream.
  2. Escreva o código HTML em MemoryStream usando o método Write().
  3. Chame Flush() para garantir que todos os dados armazenados em buffer sejam gravados no fluxo e use Seek(0, SeekOrigin.Begin) para definir a posição do fluxo para o início. Isso é importante porque um HTMLDocument lê o conteúdo da posição atual no fluxo.
  4. Inicialize o HTMLDocument do MemoryStream usando o construtor HTMLDocument(content, baseUri) . A instância de HTMLDocument é criada passando o objeto MemoryStream e o baseUri como parâmetros.
  5. Salve o arquivo HTML em uma unidade local usando o método Save() .

Código C# para carregar HTML de um fluxo de memória

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

Para saber mais sobre a API Aspose.HTML, visite nosso documentação guia. No artigo Create HTML Document , você encontrará informações sobre como carregar um documento a partir de um arquivo, URL e fluxo ou criá-lo do zero. O artigo de documentação Edit HTML Document fornece informações básicas sobre como ler ou editar o Document Object Model usando Aspose.HTML for .NET API. Você explorará como criar elementos HTML e como trabalhar com eles – modificar o documento inserindo novos nós, removendo ou editando o conteúdo de nós existentes.