Baixando uma página da web

C#:
Baixando uma página da web

How to: (Como fazer:)

using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        var url = "http://example.com";
        using (var httpClient = new HttpClient())
        {
            try
            {
                string pageContents = await httpClient.GetStringAsync(url);
                Console.WriteLine(pageContents);
            }
            catch (HttpRequestException e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}

Saída (Exemplo):

<!doctype html>
<html>
<head>
    <title>Example Domain</title>
...

Deep Dive (Mergulho Profundo)

Antes, usávamos WebClient ou HttpWebRequest para baixar páginas web. Com o tempo, HttpClient surgiu como uma escolha mais moderna e robusta, oferecendo melhores opções de personalização e maior facilidade de uso.

Alternativas incluem bibliotecas de terceiros como RestSharp ou HtmlAgilityPack - bons quando precisamos de mais ferramentas especializadas.

Na implementação, prestar atenção em questões como headers HTTP para evitar ser bloqueado por anti-bots, e o gerenciamento de cookies se estiver interagindo com sessões web.

See Also (Veja Também)