Téléchargement d'une page web

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: