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:
- 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).
- 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:
- 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.
- 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:
- Primeiro, prepare o código para um documento HTML.
- Use o construtor HTMLDocument(content, baseUri) para inicializar um documento HTML a partir de um conteúdo de string com baseUri especificado.
- 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:
- Inicialize os objetos
MemoryStream
eStreamWriter
. StreamWriter é usado para escrever o código HTML no MemoryStream. - Escreva o código HTML em MemoryStream usando o método
Write()
. - Chame
Flush()
para garantir que todos os dados armazenados em buffer sejam gravados no fluxo e useSeek(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. - 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. - 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.
Outros editores suportados
Edite arquivos em outros formatos de arquivo: