Swift:
Webseite herunterladen

So geht’s:

import Foundation

let url = URL(string: "https://beispiel.de")!
let urlSession = URLSession.shared
let task = urlSession.dataTask(with: url) { data, response, error in
    if let error = error {
        print("Fehler beim Herunterladen der Seite: \(error)")
        return
    }

    if let httpResponse = response as? HTTPURLResponse, httpResponse.statusCode == 200 {
        if let data = data, let webpageContent = String(data: data, encoding: .utf8) {
            print(webpageContent)
        }
    } else {
        print("Unerwarteter Statuscode: \((response as? HTTPURLResponse)?.statusCode ?? -1)")
    }
}

task.resume()

Ausgabe: Der vollständige HTML-Inhalt von ‘https://beispiel.de

Deep Dive

Das Herunterladen von Webseiten-Content reicht zurück bis zu den Anfängen des Internets, als Programme wie ‘wget’ und ‘curl’ in den 90ern populär wurden. In Swift gibt es Alternativen zum obigen Ansatz, zum Beispiel das Verwenden von WebView für iOS oder URLSessionDownloadTask für größere Dateien. Bei der Implementierung ist es wichtig zu beachten, dass Netzwerkanfragen asynchron ablaufen, um die UI nicht zu blockieren, und das Handling von Statuscodes sowie Fehlerbehandlung essentiell für robuste Applikationen ist.

Siehe auch: