Téléchargement d'une page web

Java:
Téléchargement d'une page web

How to:

En Java, java.net.http.HttpClient est notre ami pour télécharger une page. Voici un exemple simple :

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class DownloadPage {

    public static void main(String[] args) {
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create("http://example.com"))
                .build();

        client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
                .thenApply(HttpResponse::body)
                .thenAccept(System.out::println)
                .join();
    }
}

Si tout est bon, vous aurez le contenu de http://example.com dans la console.

Deep Dive

Avant HttpClient, on avait HttpURLConnection, moins flexible et plus verbeux. Pourquoi utiliser HttpClient? Il supporte HTTP/2, gère mieux les connexions et le code est plus clair.

Pour les gros sites, attention aux politiques de robots (fichier robots.txt) : certaines parties ne doivent pas être téléchargées automatiquement.

Si vous devez télécharger régulièrement ou massivement, pensez à respecter le serveur – attendez entre les requêtes, gérez les erreurs sans spammer le serveur.

See Also

Pour aller plus loin :