Bilder von der Website in C# herunterladen

.NET-Entwickler können jetzt einen Massen bilddownloader für Unternehmenssoftware entwickeln. Aspose.HTML for .NET ist ein richtiger Bildextraktionsdienst, der einen riesigen Stapel an Klassen und Methoden bietet, um Bilder programmgesteuert aus dem Web zu extrahieren. Darüber hinaus gibt es kein komplexes Echosystem, um diese C#-Bibliothek zu verwenden, und Sie können Bilder ganz einfach von der Website in C# herunterladen. Darüber hinaus können Sie mit diesem Aspose.HTML for .NET sowohl grafische als auch Textdaten extrahieren, wobei Sie die Implementierung hier sehen können. Beginnen wir also diesen Blogbeitrag, ohne weitere Worte zu verlieren.

In diesem Handbuch behandeln wir die folgenden Abschnitte:

  1. Installation des Bildextraktionsdienstes
  2. Bilder von einer Website in C# herunterladen - Codebeispiel
  3. Online-Datenextraktor

Installation des Bildextraktionsdienstes

Sie können HTML-Seiten also programmgesteuert analysieren, indem Sie diese C# API installieren. Neben der Datenextraktion können Sie damit auch HTML-Seiten in andere gängige Dateiformate konvertieren. Installieren Sie dazu .NET auf Ihrem Computer und installieren Sie diesen Bildextraktionsdienst, indem Sie die DLL-Datei herunterladen oder den folgenden Befehl in den NuGet-Paketmanager eingeben:

PM> Install-Package Aspose.Html

Der Installationsvorgang ist sehr einfach. Sollten Sie dennoch auf Schwierigkeiten stoßen, können Sie hier die Installationsanweisungen nachlesen.

Bildextraktionsdienst

Bilder von der Website in C# herunterladen – Codebeispiel

Jetzt können wir die Funktion zum programmgesteuerten Extrahieren von Bildern aus dem Web implementieren.

Die folgenden Schritte zeigen, wie Bilder in C# von einer Website heruntergeladen werden:

  • Öffnen Sie eine Webseite, aus der Sie Bilder extrahieren möchten, indem Sie ein Objekt der Klasse HTMLDocument initialisieren.
  • Sammeln Sie alle “img”-Elemente, indem Sie die Methode GetElementsByTagName aufrufen.
  • Rufen Sie die Select-Methode auf, um eine eindeutige Sammlung relativer Bild-URLs zu erstellen und absolute Bild-URLs zu erstellen.
  • Durchläuft alle absoluten Bild-URLs.
  • Erstellen Sie eine Bildanforderungsnachricht, indem Sie ein Objekt der Klasse RequestMessage initialisieren.
  • Extrahieren Sie Bilder, indem Sie die Methode Context.Network.Send(request) aufrufen.
  • Überprüfen Sie, ob eine Antwort erfolgreich ist, und speichern Sie das Image in einem lokalen Dateisystem, indem Sie die Methode WriteAllBytes aufrufen.

Das folgende Codebeispiel zeigt, wie ein Massen bild-Downloader programmgesteuert entwickelt wird:

using Aspose.Html;
using Aspose.Html.Net;

namespace AsposeHTML
{
    class HTML
    {
        // Laden Sie Bilder von der Website mit dem Bildextraktionsdienst herunter
        static void Main(string[] args)
        {
            // Definieren Sie den Pfad zum Arbeitsverzeichnis.
            String dataDir = "/files/";
            // Öffnen Sie eine Webseite, aus der Sie Bilder extrahieren möchten, indem Sie ein Objekt der HTMLDocument Klasse initialisieren. 
            using var document = new HTMLDocument("https://blog.aspose.com/de/tex/latex-mathematical-expressions-using-latex-to-image-api/");
            // Alles sammeln<img> Elemente durch Aufrufen der Methode GetElementsByTagName. 
            var images = document.GetElementsByTagName("img");
            // Rufen Sie die Select-Methode auf, um eine eindeutige Sammlung relativer Bild-URLs zu erstellen und absolute Bild-URLs zu erstellen. 
            var urls = images.Select(element => element.GetAttribute("src")).Distinct();
            var absUrls = urls.Select(src => new Url(src, document.BaseURI));
            // Durchläuft alle absoluten Bild-URLs. 
            foreach (var url in absUrls)
            {
                // Erstellen Sie eine Bildanforderungsnachricht, indem Sie ein Objekt der Klasse RequestMessage initialisieren.
                using var request = new RequestMessage(url);
                // Extrahieren Sie Bilder, indem Sie die Methode Context.Network.Send(request) aufrufen. 
                using var response = document.Context.Network.Send(request);
                // Überprüfen Sie, ob eine Antwort erfolgreich ist, und speichern Sie das Image in einem lokalen Dateisystem, indem Sie die Methode WriteAllBytes aufrufen.
                if (response.IsSuccess)
                {
                    File.WriteAllBytes(Path.Combine(dataDir, url.Pathname.Split('/').Last()), response.Content.ReadAsByteArray());
                }
            }
        }
    }
}

Sie können die Ausgabe im Bild unten sehen:

Bilder aus dem Web extrahieren

Online-Datenextraktor

Es gibt ein Online-Tool, das von Aspose.HTML unterstützt wird. Dieser Online-Datenextraktor auf Unternehmensebene ist jedoch mit einer benutzerfreundlichen Benutzeroberfläche ausgestattet und Sie können die Datenextraktion mit einem Klick durchführen. Darüber hinaus ist es webbasiert und erfordert keine Kontoerstellung. Öffnen Sie dieses Tool also einfach in einem Webbrowser und beginnen Sie mit der Extraktion wichtiger Daten. Tatsächlich werden diesem Online-Tool in naher Zukunft weitere Funktionen hinzugefügt.

Online-Datenextraktor

Bilder aus dem Internet extrahieren – Kostenlose Lizenz erhalten

Sie können eine kostenlose temporäre Lizenz erwerben, um diesen Bildextraktionsdienst ohne Evaluierungsbeschränkungen auszuprobieren.

Abschluss

Wir beenden diesen Blogbeitrag hier und hoffen, dass Sie gelernt haben, wie Sie Bilder programmgesteuert in C# von einer Website herunterladen. Außerdem haben wir die Schritte und den Codeausschnitt zur Entwicklung eines Massen bilddownloaders durchgearbeitet. Darüber hinaus können Sie Bilder aus dem Internet extrahieren, indem Sie mit Aspose.HTML for .NET ein paar Zeilen Code in C# schreiben. Sie finden also eine umfassende Dokumentation zur Verwendung und Entwicklung. Darüber hinaus bieten die API-Referenzen einen Ausgangspunkt für .NET-Entwickler.

Bitte bleiben Sie mit aspose.com für die kommenden Blogbeiträge in Kontakt.

Hilfe ist verfügbar

Sie können Ihre Fragen oder Anfragen in unserem Forum teilen.

Häufig gestellte Fragen – FAQs

Wie lade ich ein Bild von einer URL herunter?

Sie können Bilder von der Website in C# herunterladen, indem Sie Aspose.HTML for .NET verwenden. Besuchen Sie außerdem diesen Link, um zu erfahren, wie Sie diese Funktionalität mit diesem Bildextraktionsdienst erreichen.

Wie extrahiere ich Daten online?

Mit diesem Online-Datenextraktor können Sie Text und Grafikdaten von Websites robust und effizient extrahieren.

Siehe auch