Téléchargement d'une page web

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

How to:

Swift te permet de récupérer facilement le contenu d’une page web avec URLSession. Voici un exemple simple :

import Foundation

let url = URL(string: "https://example.com")!
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    if let error = error {
        print("Erreur lors du téléchargement : \(error)")
        return
    }

    if let data = data, let pageContent = String(data: data, encoding: .utf8) {
        print(pageContent)
    }
}

task.resume()

// Ne pas oublier que URLSession fonctionne en mode asynchrone !
// Pour un script ou une exécution en playground, utilisez RunLoop.main.run()

Exemple de sortie console:

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

Deep Dive:

Historiquement, en Swift, les programmeurs utilisaient souvent des bibliothèques comme Alamofire pour des opérations réseau. URLSession est l’outil moderne intégré par Apple désormais privilégié pour sa simplicité d’utilisation et son intégration système.

Il existe des alternatives à URLSession, comme Alamofire ou le framework Combine pour un style plus réactif.

Pour bien comprendre la récupération d’une page web, on doit se pencher sur les détails d’implémentation tels que la gestion des erreurs, le décodage de la réponse et la prise en charge de la sécurité (comme le respect de TLS). La doc officielle d’Apple et les cours en ligne approfondissent ces sujets.

See Also: