C#:
Een webpagina downloaden
Hoe te:
C# maakt het eenvoudig om een webpagina te downloaden met de HttpClient
klasse. Hier volgt een snel voorbeeld:
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
using (HttpClient client = new HttpClient())
{
try
{
string url = "http://example.com"; // Vervang door de gewenste URL
HttpResponseMessage response = await client.GetAsync(url);
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody); // Geeft de ruwe HTML-inhoud weer
}
catch (HttpRequestException e)
{
Console.WriteLine("\nUitzondering Opgelopen!");
Console.WriteLine("Bericht :{0} ", e.Message);
}
}
}
}
Dit zal de HTML-inhoud van de opgegeven webpagina naar de console uitvoeren.
Diepere Duik
Vóór HttpClient
, gebruikte C# klassen zoals WebClient
en HttpWebRequest
om webinhoud te downloaden. HttpClient
is de nieuwste en is ontworpen om herbruikbaar, efficiënt te zijn, en ondersteunt asynchrone bewerkingen, wat het de voorkeurkeuze maakt voor nieuwe applicaties.
Er bestaan alternatieven. Zo kunnen bijvoorbeeld externe bibliotheken zoals HtmlAgilityPack
HTML analyseren, wat het gemakkelijker maakt om door de DOM te navigeren of specifieke stukjes informatie te extraheren zonder te hoeven omgaan met rauwe HTML-strings.
Bij het downloaden van webpagina’s, vergeet niet: respecteer robots.txt-bestanden, handel uitzonderingen af, en wees bewust van de gebruiksvoorwaarden van websites.