C#:
Téléchargement d'une page web
How to:
Pour télécharger le contenu d’une page web, on utilise la classe HttpClient
. Voici un exemple simple :
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
var url = "http://example.com";
using var httpClient = new HttpClient();
try
{
string content = await httpClient.GetStringAsync(url);
Console.WriteLine(content);
}
catch (HttpRequestException e)
{
Console.WriteLine("Erreur lors du téléchargement de la page : {0} ", e.Message);
}
}
}
Sortie possible :
<!doctype html>
<html>
<head>
<title>Example Domain</title>
...
</html>
Deep Dive
Historiquement, on utilisait WebClient
ou HttpWebRequest
pour télécharger du contenu web en C#. Mais HttpClient
, introduit avec .NET 4.5, est désormais le choix préféré grâce à son interface moderne et sa gestion améliorée des connexions HTTP.
Parmi les alternatives, on retrouve des bibliothèques comme RestSharp
ou Flurl
, qui offrent des fonctionnalités supplémentaires pour les appels d’API REST.
L’implémentation d’un téléchargement propre sous-entend la gestion des exceptions, l’encodage correct, et potentiellement la manipulation de HttpHeaders
pour se comporter comme un navigateur web classique.
See Also
Pour approfondir: