Wie man Bilder aus einer Website extrahiert
Die Fähigkeit, Bilder aus HTML zu extrahieren, ist wichtig für verschiedene Anwendungen wie Web Scraping und Inhaltsanalyse. Aspose.HTML for Java ist eine robuste Bibliothek, die diesen Prozess vereinfacht, indem sie Entwicklern eine Reihe von Werkzeugen zur Verfügung stellt, um nahtlos in HTML-Dokumenten zu navigieren und Informationen zu sammeln. Sehen wir uns an, wie man Bilder aus HTML-Dokumenten extrahiert.
Bilder aus HTML mit Java extrahieren
Mit der Bibliothek Aspose.HTML for Java können Sie ganz einfach Ihre eigene Anwendung erstellen, da unsere API ein robustes Set von Tools 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.
Java-Code zum Extrahieren von Bildern aus einer Website
// Open a document you want to download images from
final HTMLDocument document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");
// Collect all <img> elements
HTMLCollection images = document.getElementsByTagName("img");
// Create a distinct collection of relative image URLs
Iterator<Element> iterator = images.iterator();
java.util.Set<String> urls = new HashSet<>();
for (Element e : images) {
urls.add(e.getAttribute("src"));
}
// Create absolute image URLs
java.util.List<Url> absUrls = urls.stream()
.map(src -> new Url(src, document.getBaseURI()))
.collect(Collectors.toList());
for (Url url : absUrls) {
// Create an image request message
final RequestMessage request = new RequestMessage(url);
// Extract image
final ResponseMessage response = document.getContext().getNetwork().send(request);
// Check whether a response is successful
if (response.isSuccess()) {
String[] split = url.getPathname().split("/");
String path = split[split.length - 1];
// Save file to a local file system
FileHelper.writeAllBytes(path, response.getContent().readAsByteArray());
}
}
Schritte zum Extrahieren von Bildern aus einer Website
- Verwenden Sie den
HTMLDocument(
Url
) Konstruktor, um ein HTML-Dokument zu initialisieren. - Verwenden Sie die Methode
getElementsByTagName(
"img"
) , um alle<img>
Elemente aus dem Dokument zu sammeln. Die Methode gibt eine Sammlung von<img>
-Elementen zurück, die auf der Web-Seite vorhanden sind. - Iterieren Sie durch die
<img>
Elemente und verwenden Sie die Methode getAttribute("src"
) , um das Attributsrc
jedes<img>
Elements zu extrahieren. - Erstellen absoluter Bild-URLs unter Verwendung der Klasse
Url
und der Eigenschaft
BaseURI
der KlasseHTMLDocument
. - Erstellen Sie für jede absolute Bild-URL eine Anfrage mit dem Konstruktor
RequestMessage(
url
) und senden Sie sie. Die Antwort wird geprüft, um sicherzustellen, dass sie erfolgreich war. - Wenn die Antwort erfolgreich war, extrahieren Sie die Bilddaten und speichern Sie sie mit
FileHelper.writeAllBytes()
in Ihrem lokalen Dateisystem.
Mit Aspose.HTML for Java können Sie ganz einfach ein Tool erstellen, das eine HTML-Seite analysiert, Bildquellen identifiziert und diese Bilder herunterlädt. Es ist eine leistungsstarke Lösung für alle, die Bilder für die Analyse, Archivierung oder die Erstellung von Inhalten sammeln müssen – ohne die Mühe, dies manuell zu tun. Weitere Informationen zur programmgesteuerten Extraktion verschiedener Bildtypen aus einer Website mit Java finden Sie im Dokumentationsartikel Extract Images From Website in Java .
Hinweis: Bevor Sie gespeicherte Bilder kommerziell nutzen, müssen Sie unbedingt die Urheberrechtsgesetze einhalten und entsprechende Genehmigungen oder Lizenzen einholen. Wir unterstützen nicht die Extraktion und Verwendung von Dateien anderer Personen zu kommerziellen Zwecken ohne deren Zustimmung.
Erste Schritte mit der Java-HTML-Parser-Bibliothek
Die HTML-API ist eine erweiterte Web-Scraping- und HTML-Parsing-Bibliothek. Man kann Knoten erstellen, bearbeiten, durch Knoten navigieren, Daten extrahieren und HTML-, XHTML- und MHTML-Dateien in PDF, Bilder und andere Formate konvertieren. Darüber hinaus verarbeitet es auch CSS, HTML Canvas, SVG, XPath und JavaScript, um Manipulationsaufgaben zu erweitern. Es ist eine eigenständige API und erfordert keine Softwareinstallation.Sie können die neueste Version direkt aus dem Aspose Maven Repository herunterladen und in Ihrem Maven-basierten Projekt installieren, indem Sie die folgenden Konfigurationen zu pom.xml hinzufügen.
Repository
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Dependency
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html</artifactId>
<version>version of aspose-html API</version>
<classifier>jdk17</classifier>
</dependency>
Andere unterstützte Funktionen
Verwenden Sie die Aspose.HTML for Java-Bibliothek, um HTML-basierte Dokumente zu analysieren und zu manipulieren. Klar, sicher und einfach!