Як витягти зображення з веб-сайту

Можливість витягувати зображення з 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());
    }
}



Кроки для вилучення зображень з веб-сайту

  1. Використовуйте конструктор HTMLDocument(Url) для ініціалізації HTML-документа.
  2. Використовуйте метод getElementsByTagName("img") , щоб зібрати всі елементи <img> з документа. Метод повертає колекцію елементів <img>, присутніх на веб-сторінці.
  3. Перебирайте елементи <img> і використовуйте метод getAttribute("src") для вилучення атрибута src кожного елемента <img>.
  4. Створіть абсолютні URL-адреси зображень за допомогою класу Url і властивості BaseURI класу HTMLDocument.
  5. Для кожної абсолютної URL-адреси зображення створити запит за допомогою конструктора RequestMessage(url) і надіслати його. Відповідь перевіряється, щоб переконатися, що вона була успішною.
  6. Якщо відповідь була успішною, витягніть дані зображення і збережіть їх у вашій локальній файловій системі за допомогою FileHelper.writeAllBytes().

За допомогою Aspose.HTML for Java ви можете легко створити інструмент, який аналізує HTML-сторінку, визначає джерела зображень і завантажує ці зображення. Це потужне рішення для тих, кому потрібно зібрати зображення для аналізу, архівування або створення контенту – без клопоту робити це вручну. Щоб дізнатися більше про те, як програмно витягувати різні типи зображень з веб-сайту за допомогою Java, зверніться до статті документації Extract Images From Website in Java .

Примітка: Важливо дотримуватися законів про авторське право і отримати відповідні дозволи або ліцензії перед комерційним використанням збережених зображень. Ми не підтримуємо вилучення та використання файлів інших людей у ​​комерційних цілях без їхньої згоди.




Початок роботи з Java HTML Parser Library

HTML API – це розширена бібліотека веб-збирання та аналізу HTML. Можна створювати, редагувати, переміщатися між вузлами, витягувати дані та конвертувати файли HTML, XHTML і MHTML у PDF, зображення та інші формати. Крім того, він також готово обробляє 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-документами. Зрозуміло, безпечно і просто!