1. Produtos
  2.   editor
  3.   Java
  4.   jsoup
 
  

jsoup: O Analisador HTML para Java

Raspe, limpe e manipule HTML com a simplicidade do jQuery em Java

O que é jsoup?

jsoup é uma biblioteca Java leve mas poderosa projetada para trabalhar com HTML real. Fornece uma API fluida para analisar HTML de URLs, arquivos ou strings, extrair e manipular dados usando navegação DOM, seletores CSS e métodos modernos HTML5. Ideal para raspagem web, extração de dados e sanitização HTML, o jsoup lida com marcação malformada graciosamente - assim como um navegador faria.

Diferente de abordagens regex brutas, jsoup oferece um modelo de objeto limpo com métodos inspirados no jQuery, simplificando tarefas como envio de formulários, modificação de atributos e extração de texto. Sem dependências e com licença MIT, é o favorito dos desenvolvedores Java que precisam de processamento HTML confiável.

Vantagens principais do jsoup:

  • Processamento de HTML real: Analisa HTML bagunçado como navegadores fazem
  • Sintaxe estilo jQuery: Seletores CSS familiares (ex. doc.select("div.content"))
  • Otimizado para raspagem: Segue redirecionamentos, lida com cookies e envia formulários
  • Multiplataforma: Java puro sem dependências nativas
  • Segurança: Prevenção XSS e sanitização HTML embutidas

Perfeito para mineração de dados, automação web e análise de conteúdo.

GitHub

Estatísticas do GitHub

Nome:
Linguagem:
Estrelas:
Garfos:
Licença:
O repositório foi atualizado pela última vez em

Por que escolher jsoup?

  • Simplicidade: API intuitiva com suporte a seletores CSS
  • Confiabilidade: Mantido ativamente desde 2009
  • Performance: Otimizado para streaming e documentos grandes
  • Flexibilidade: Trabalha com fragmentos, arquivos ou URLs ao vivo
  • Saída limpa: Formata e reformata HTML elegantemente

Instalação

Adicione jsoup via Maven ou Gradle:

Maven



    org.jsoup
    jsoup
    1.17.2


Gradle


implementation 'org.jsoup:jsoup:1.17.2'

Requisitos do sistema: Java 8+

Exemplos de Código

Casos de uso práticos do jsoup:

Análise HTML com jsoup

Exemplo 1: Analisar um Documento de uma String

Se você tem HTML em uma string Java e quer analisá-lo para obter seu conteúdo ou modificá-lo, jsoup pode fazer isso com poucas linhas de código.

O método parse(String html, String baseUri) converte o HTML de entrada em um novo Documento. O parâmetro baseUri ajuda a resolver URLs relativos em absolutos e deve corresponder à URL de onde o documento foi obtido. Se isso não for relevante, ou se o HTML contiver um elemento <base>, você pode usar o método mais simples parse(String html).

Exemplo 2: Usar Seletores CSS para Encontrar Elementos

Você quer encontrar ou manipular elementos usando seletores CSS. Analise e manipule uma string HTML diretamente:

Exemplo 3: Modificar o HTML de um Elemento

Você precisa modificar o HTML de um elemento. Use os métodos setter HTML em Element como mostrado no seguinte código de exemplo.

Recursos Avançados

jsoup suporta processamento HTML profissional:

  • Manipulação de formulários: Envie dados POST:

    Envio de Formulário

    
        Connection.Response res = Jsoup.connect("https://example.com/login")
            .data("username", "user", "password", "pass")
            .method(Connection.Method.POST)
            .execute();
        Document dashboard = res.parse();
        
    
  • Suporte a proxy: Raspe via proxy:

    Configuração de Proxy

    
        Document doc = Jsoup.connect("https://target.com")
            .proxy("127.0.0.1", 8080)
            .get();
        
    
  • Manipulação DOM: Modifique estrutura HTML:

    Alterações DOM

    
        doc.select("div.ads").remove(); // Remove todos os anúncios
        doc.select("h1").attr("class", "header"); // Adiciona classe CSS
        
    

jsoup vs. HTMLUnit

Diferenças chave:

  • Foco: jsoup analisa HTML estático; HTMLUnit simula navegadores (executa JavaScript)
  • Velocidade: jsoup é mais rápido para análise pura de HTML
  • Estilo API: jsoup usa seletores CSS; HTMLUnit imita Selenium
  • Casos de uso: jsoup para raspagem; HTMLUnit para teste de páginas dinâmicas
  • Dependências: jsoup não tem; HTMLUnit requer bibliotecas adicionais

Conclusão

jsoup é o kit de ferramentas HTML definitivo para desenvolvedores Java. Ideal para:

  • Raspagem web: Extrair dados de qualquer site
  • Limpeza de dados: Sanitizar e normalizar HTML
  • Análise de conteúdo: Analisar feeds RSS ou arquivos web
  • Testes: Verificar estrutura HTML em aplicativos

Com licença MIT e API intuitiva, jsoup é a escolha principal para processamento HTML baseado em Java.

Produtos Similares

 Portugese