Як витягти зображення з веб-сайту
Можливість витягувати зображення з 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, зверніться до статті документації 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-документами. Зрозуміло, безпечно і просто!