Как извлечь изображения с веб-сайта
Возможность извлекать изображения из HTML важна для различных приложений, таких как веб-скраппинг и анализ контента. Aspose.HTML for Java – это надежная библиотека, которая упрощает этот процесс, предлагая разработчикам набор инструментов для удобной навигации и сбора информации из HTML-документов. Давайте рассмотрим, как извлекать изображения из HTML-документов.
Извлечение изображений из HTML с помощью Java
Используя библиотеку Aspose.HTML for Java, вы можете легко создать собственное приложение, поскольку наш API предоставляет надежный набор инструментов для разбора и извлечения информации из HTML-документов. Если вы хотите использовать функции разбора HTML-данных в своем продукте или программно извлекать данные из HTML, рассмотрите пример кода ниже.
Java-код для извлечения изображений с веб-сайта
// 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());
}
}
Шаги по извлечению изображений с веб-сайта
- Используйте конструктор
HTMLDocument(
Url
) для инициализации HTML-документа. - Используйте метод
getElementsByTagName(
"img"
) , чтобы собрать все<img>
элементы из документа. Метод возвращает коллекцию элементов<img>
, присутствующих на веб-странице. - Пройдитесь по элементам
<img>
и используйте метод getAttribute("src"
) для извлечения атрибутаsrc
каждого элемента<img>
. - Создайте абсолютные URL-адреса изображений, используя класс
Url
и свойство
BaseURI
классаHTMLDocument
. - Для каждого абсолютного URL-адреса изображения создайте запрос с помощью конструктора
RequestMessage(
url
) и отправьте его. Ответ проверяется на успешность. - Если ответ был успешным, извлеките данные изображения и сохраните их в локальной файловой системе с помощью
FileHelper.writeAllBytes()
.
С помощью Aspose.HTML for Java вы можете легко создать инструмент, который анализирует HTML-страницу, определяет источники изображений и загружает их. Это мощное решение для тех, кому нужно собирать изображения для анализа, архивирования или создания контента – без лишних хлопот, связанных с ручной работой. Чтобы узнать больше о том, как программно извлекать различные типы изображений с веб-сайта с помощью Java, обратитесь к статье документации Извлечение изображений с веб-сайта на Java .
Примечание: Перед использованием сохраненных изображений в коммерческих целях необходимо соблюдать законы об авторском праве и получать соответствующие разрешения или лицензии. Мы не поддерживаем извлечение и использование файлов других людей в коммерческих целях без их согласия.
Начало работы с Java HTML Parser Library
HTML API – это расширенная библиотека веб-скрапинга и синтаксического анализа HTML. Можно создавать, редактировать, перемещаться по узлам, извлекать данные и преобразовывать файлы HTML, XHTML и MHTML в PDF, изображения и другие форматы. Кроме того, Java library также обрабатывает CSS, HTML Canvas, SVG, XPath и JavaScript из коробки, чтобы расширить задачи манипулирования. Это автономный API, не требующий установки программного обеспечения.Вы можете загрузить его последнюю версию непосредственно из Aspose Maven Repository и установить его в свой проект на основе Maven, добавив следующие конфигурации в файл pom.xml.
Репозиторий
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Зависимость
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html</artifactId>
<version>version of aspose-html API</version>
<classifier>jdk17</classifier>
</dependency>
Другие поддерживаемые функции
Используйте библиотеку Aspose.HTML for Java для анализа и работы с документами на основе HTML. Понятно, безопасно и просто!