Como extrair imagens de um site

A capacidade de extrair imagens de HTML é importante para várias aplicações, como web scraping e análise de conteúdo. O Aspose.HTML for Java é uma biblioteca robusta que simplifica esse processo, oferecendo aos desenvolvedores um conjunto de ferramentas para navegar e coletar informações de documentos HTML sem problemas. Vamos explorar como extrair imagens de documentos HTML.


Extrair imagens de HTML usando Java

Usando a biblioteca Aspose.HTML for Java, você pode criar facilmente seu próprio aplicativo, pois nossa API fornece um conjunto robusto de ferramentas para analisar e extrair informações de documentos HTML. Se você deseja usar recursos de análise de dados HTML em seu produto ou extrair dados de HTML de forma programática, consulte o exemplo de código abaixo.


Código Java para extrair imagens de um site

// 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());
    }
}



Etapas para extrair imagens do site

  1. Use o construtor HTMLDocument(Url) para inicializar um documento HTML.
  2. Utilize o método getElementsByTagName("img") para coletar todos os elementos <img> do documento. O método retorna uma coleção de elementos <img> presentes na página web.
  3. Iterar através dos elementos <img> e utilizar o método getAttribute("src") para extrair o atributo src de cada elemento <img>.
  4. Criar URLs absolutas de imagens utilizando a classe Url e a propriedade BaseURI da classe HTMLDocument.
  5. Para cada URL de imagem absoluta, criar uma requisição utilizando o construtor RequestMessage(url) e enviá-la. A resposta é verificada para garantir que foi bem sucedida.
  6. Se a resposta foi bem sucedida, extraia os dados da imagem e salve-os no seu sistema de arquivos local utilizando FileHelper.writeAllBytes().

Com Aspose.HTML for Java, é possível criar facilmente uma ferramenta que analisa uma página HTML, identifica fontes de imagem e baixa essas imagens. É uma solução poderosa para aqueles que precisam coletar imagens para análise, arquivamento ou criação de conteúdo – sem o incômodo de fazer isso manualmente. Para saber mais sobre como extrair programaticamente diferentes tipos de imagens de um sítio Web utilizando Java, consulte o artigo da documentação Extrair imagens do sítio Web em Java .

Nota: É essencial cumprir as leis de direitos de autor e obter as permissões ou licenças adequadas antes de utilizar comercialmente as imagens guardadas. Não apoiamos a extração e utilização de ficheiros de outras pessoas para fins comerciais sem o seu consentimento.




Introdução à biblioteca de analisador de HTML Java

A API HTML é uma biblioteca avançada de web scraping e análise de HTML. Pode-se criar, editar, navegar pelos nós, extrair dados e converter arquivos HTML, XHTML e MHTML em PDF, Imagens e outros formatos. Além disso, ele também lida com CSS, HTML Canvas, SVG, XPath e JavaScript pronto para uso para estender as tarefas de manipulação. É uma API independente e não requer nenhuma instalação de software.
Você pode baixar sua versão mais recente diretamente do Aspose Maven Repository e instalá-lo em seu projeto baseado em Maven adicionando as seguintes configurações ao pom.xml.


Repositório

<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>

Dependência

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html</artifactId>
<version>version of aspose-html API</version>
<classifier>jdk17</classifier>
</dependency>

Outras funcionalidades suportadas

Use a biblioteca Aspose.HTML for Java para analisar e manipular documentos baseados em HTML. Claro, seguro e simples!