Wie man Bilder aus Webseiten extrahiert
Die Fähigkeit, Bilder aus HTML zu extrahieren, ist für verschiedene Anwendungen wie Web Scraping und Inhaltsanalyse von entscheidender Bedeutung. Aspose.HTML for Python via .NET ist eine robuste Bibliothek, die diesen Prozess vereinfacht, indem sie Entwicklern eine Reihe von Werkzeugen zum nahtlosen Navigieren und Sammeln von Informationen aus HTML-Dokumenten bietet. Diese leistungsstarke Lösung ist ideal für alle, die Bilder für die Analyse, Archivierung oder die Erstellung von Inhalten sammeln müssen – und damit die manuelle Arbeit überflüssig machen. Sehen wir uns an, wie man Bilder von Webseiten herunterlädt.
Bilder mit Python extrahieren
Mit Aspose.HTML for Python via .NET können Sie ganz einfach Ihre eigene Anwendung erstellen, da unsere API einen robusten Satz von Werkzeugen zum Parsen und Extrahieren von Informationen aus HTML-Dokumenten bietet. Wenn Sie die Funktionen zum Parsen von HTML-Daten in Ihrem Produkt nutzen oder programmatisch Daten aus HTML extrahieren möchten, sehen Sie sich das folgende Codebeispiel an.
Python-Code zum Herunterladen von Bildern von einer Webseite
import os
import aspose.html as ah
import aspose.html.net as ahnet
# Prepare output directory
output_dir = "output/"
os.makedirs(output_dir, exist_ok=True)
# Open HTML document from URL
with ah.HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-color/") as doc:
# Collect all <img> elements
images = doc.get_elements_by_tag_name("img")
# Get distinct relative image URLs
urls = set(img.get_attribute("src") for img in images)
# Create absolute image URLs
abs_urls = [ah.Url(url, doc.base_uri) for url in urls]
for url in abs_urls:
# Create a network request
request = ahnet.RequestMessage(url.href)
# Send request
response = doc.context.network.send(request)
# Check if successful
if response.is_success:
# Extract file name
file_name = os.path.basename(url.pathname)
# Save image locally
with open(os.path.join(output_dir, file_name), "wb") as f:
f.write(response.content.read_as_byte_array())
Schritte zum Extrahieren von Bildern aus Webseiten
- Öffnen Sie das HTML-Zieldokument, eine Webseite, mit Hilfe der Klasse “HTMLDocument”. Dieses Dokument ist die Quelle, aus der die Bilder extrahiert werden.
- Rufen Sie die Methode
get_elements_by_tag_name(“img”)
des
HTMLDocument
-Objekts auf, um alle<img>
-Elemente im HTML-Dokument zu sammeln. - Extrahieren von eindeutigen Bild-URLs durch Iteration über die Sammlung von
<img>
-Elementen und Zugriff auf das Attributsrc
jedes Elements mit der Methode get_attribute(“src”) . Speichern Sie diese URLs in einem Set, um sicherzustellen, dass es keine Duplikate gibt. - Erstellen Sie absolute Bild-URLs, indem Sie jede relative oder unvollständige URL zusammen mit der
base_uri
des Dokuments an denUrl
-Konstruktor übergeben. Dadurch wird sichergestellt, dass jede URL vollständig und für den Netzwerkzugriff gültig ist. - Erstellen Sie für jede absolute Bild-URL ein RequestMessage -Objekt, das die HTTP-Anfrage darstellt, die zum Abrufen der Bilddaten erforderlich ist.
- Verwenden Sie die Methode
doc.context.network.send(request)
, um die Anfrage zu senden und eine Antwort zu erhalten. Prüfen Sie, ob die Antwort erfolgreich ist, indem Sie die Eigenschaftis_success
auswerten. - Parsen Sie die absolute Bild-URL mit
os.path.basename()
, um den Dateinamen zu extrahieren, und speichern Sie dann den Bildinhalt im Ausgabeverzeichnis, indem Sie die binären Daten aus der Antwort in eine Datei schreiben.
Weitere Informationen zur programmgesteuerten Extraktion verschiedener Bildtypen aus einer Website mit Python finden Sie im Dokumentationsartikel Extracting Images from a Website in Python .
Hinweis: Beachten Sie stets die Urheberrechtsgesetze. Vergewissern Sie sich, dass Sie die entsprechenden Rechte, Genehmigungen oder Lizenzen haben, bevor Sie die extrahierten Bilder für kommerzielle Zwecke verwenden. Wir befürworten oder unterstützen nicht die unbefugte Nutzung von urheberrechtlich geschützten Inhalten.
Erste Schritte mit der Python-API
Wenn Sie HTML-Dokumente analysieren, bearbeiten und verwalten möchten, installieren Sie unser flexibles, schnelles Aspose.HTML for Python via .NET-API. „pip“ ist der einfachste Weg, Aspose.HTML for Python via .NET herunterzuladen und zu installieren. Führen Sie dazu den folgenden Befehl aus:
pip install aspose-html-net
Weitere Einzelheiten zur Installation der Python-Bibliothek und zu den Systemanforderungen finden Sie in der Apose.HTML-Dokumentation.
Andere unterstützte Funktionen
Verwenden Sie die Aspose.HTML for Python via .NET-Bibliothek, um HTML-basierte Dokumente zu parsen und zu bearbeiten. Klar, sicher und einfach!