
La lettura di HTML in C# apre un mondo di possibilità per interagire con il contenuto Web nelle applicazioni C# .NET. Puoi analizzare o navigare facilmente nei documenti HTML per una semplice estrazione di dati o complesse attività di web scraping in C# per elaborare il contenuto HTML. Di conseguenza, questo post del blog illustra come leggere l’HTML in C# coprendo diversi approcci per caricare il contenuto HTML e analizzare la stringa HTML in base alle proprie esigenze.
Configura l’API del lettore HTML in C#
È possibile scaricare facilmente l’API dalla sezione New Releases o installare Conholdate.Total for .NET dalla raccolta NuGet eseguendo il seguente comando di installazione nella console di gestione pacchetti in Visual Studio:
PM> NuGet\Install-Package Conholdate.Total
Leggere un file HTML in C#
L’HTML (Hypertext Markup Language) è la spina dorsale delle pagine web, responsabile della definizione della struttura e del contenuto dei siti web. È costituito da elementi rappresentati da tag, ciascuno con uno scopo specifico. Quando accedi a una pagina web, il tuo browser interpreta il codice HTML e lo visualizza in un layout visivo con cui puoi interagire. Per leggere e manipolare il contenuto HTML in C#, puoi analizzare ed esplorare i documenti HTML seguendo i passaggi seguenti:
- Carica il file HTML di origine con l’istanza della classe HTMLDocument.
- Leggere il contenuto HTML utilizzando la proprietà OuterHTML.
Il frammento di codice seguente mostra come leggere un file HTML utilizzando C#:
string documentPath = "document.html";
// Carica un file HTML
var document = new HTMLDocument(documentPath);
// Scrivere il contenuto del documento nel flusso di output
Console.WriteLine(document.DocumentElement.OuterHTML);
Naviga nel file HTML per leggere i contenuti HTML in C#
È necessario seguire i passaggi seguenti per navigare in un file HTML e leggere il contenuto HTML in C#:
- Preparare il codice HTML e avviare l’oggetto della classe HTMLDocument.
- Ottieni il riferimento al primo figlio (primo SPAN) del BODY.
- Naviga tra i nodi figlio ed estrai le informazioni.
Il seguente esempio di codice mostra come spostarsi nei nodi HTML per leggere i contenuti HTML in C#:
// Preparare il codice HTML
var html_code = "<span>Hello</span> <span>World!</span>";
// Inizializza un documento dal codice preparato
using (var document = new Aspose.Html.HTMLDocument(html_code, "."))
{
// Ottieni il riferimento al primo figlio (primo SPAN) del BODY
var element = document.Body.FirstChild;
Console.WriteLine(element.TextContent); // output: Hello
// Ottieni il riferimento allo spazio bianco tra gli elementi html
element = element.NextSibling;
Console.WriteLine(element.TextContent); // output: ' '
// Ottieni il riferimento al secondo elemento SPAN
element = element.NextSibling;
Console.WriteLine(element.TextContent); // output: World!
}
Leggi il file HTML come stringa in C#
Puoi leggere i file HTML come una stringa in C# da qualsiasi URL con i seguenti passaggi:
- Inizializza l’oggetto della classe HTMLDocument con l’URL.
- Leggere il contenuto testuale del formato HTML.
- Scrivi il file TXT con il testo estratto da HTML tramite URL.
L’esempio di codice seguente spiega come leggere un file HTML come stringa in C# da qualsiasi URL:
// Inizializza l'oggetto HTMLDocument con l'URL
HTMLDocument document = new HTMLDocument("https://products.aspose.com/html/net");
// Leggere il contenuto testuale del formato HTML
String text = document.Body.TextContent;
// Scrivi il file TXT con il testo estratto
File.WriteAllText("Webpage.txt", text);
Licenza di valutazione gratuita
Puoi ottenere una licenza temporanea gratuita per evitare eventuali limitazioni di valutazione.
Riassumendo
Essere in grado di leggere HTML in C# è un’abilità preziosa per lavorare su progetti relativi al Web e attività di estrazione dati. In questo post del blog abbiamo trattato tre diversi approcci alla lettura dell’HTML in C#. Ciò consente di estrarre o analizzare informazioni dalle pagine HTML per un’ulteriore elaborazione. Tuttavia, puoi esplorare molte altre funzionalità offerte dall’API e non esitare a contattarci al forum.