1. Productes
  2.   Editor
  3.   Java
  4.   jsoup
 
  

jsoup: L'Analitzador HTML per a Java

Extreu, neteja i manipula HTML amb la simplicitat de jQuery en Java

Què és jsoup?

jsoup és una biblioteca Java lleugera però potent dissenyada per treballar amb HTML del món real. Proporciona una API intuïtiva per analitzar HTML des d'URLs, fitxers o cadenes, extreure i manipular dades mitjançant recorregut DOM, selectors CSS i mètodes moderns d'HTML5. Ideal per a web scraping, extracció de dades i neteja d'HTML, jsoup gestiona el marcatge mal format amb gràcia, igual que faria un navegador.

A diferència dels enfocaments basats en regex, jsoup ofereix un model d'objectes net amb mètodes inspirats en jQuery, simplificant tasques com l'enviament de formularis, la modificació d'atributs i l'extracció de text. Sense dependències i amb llicència MIT, és la preferida dels desenvolupadors Java que necessiten un processament HTML fiable.

Avantatges clau de jsoup:

  • Gestió d'HTML real: Analitza HTML desordenat com ho fan els navegadors
  • Sintaxi tipus jQuery: Selectors CSS familiars (ex. doc.select("div.content"))
  • Optimitzat per scraping: Segueix redireccions, gestiona cookies i envia formularis
  • Multiplataforma: Java pur sense dependències natives
  • Seguretat: Prevenció XSS integrada i neteja d'HTML

Perfecte per a mineria de dades, automatització web i anàlisi de contingut.

GitHub

Estadístiques de GitHub

Nom:
Llenguatge:
Estrelles:
Forquilles:
Llicència:
El repositori es va actualitzar per última vegada a

Per què triar jsoup?

  • Simplicitat: API intuïtiva amb suport per selectors CSS
  • Fiabilitat: Mantingut activament des del 2009
  • Rendiment: Optimitzat per a fluxos i documents grans
  • Flexibilitat: Funciona amb fragments, fitxers o URLs en directe
  • Sortida neta: Formata i reestructura HTML

Instal·lació

Afegeix jsoup via Maven o Gradle:

Maven



    org.jsoup
    jsoup
    1.17.2


Gradle


implementation 'org.jsoup:jsoup:1.17.2'

Requisits del sistema: Java 8+

Exemples de Codi

Casos d'ús pràctics de jsoup:

Anàlisi HTML amb jsoup

Exemple 1: Analitzar un Document des d'una Cadena

Si tens HTML en una cadena Java i vols analitzar-lo per obtenir-ne el contingut o modificar-lo, jsoup ho pot fer amb poques línies de codi.

El mètode parse(String html, String baseUri) converteix l'HTML d'entrada en un nou Document. El paràmetre baseUri ajuda a resoldre URL relatives en absolutes i hauria de correspondre a la URL des d'on es va recuperar el document. Si això no és rellevant, o si l'HTML conté un element <base>, pots utilitzar el mètode més simple parse(String html).

Exemple 2: Utilitzar Selectors CSS per Trobar Elements

Vols trobar o manipular elements usant selectors CSS. Analitza i manipula directament una cadena HTML:

Exemple 3: Modificar l'HTML d'un Element

Necessites modificar l'HTML d'un element. Utilitza els mètodes establidors d'HTML a Element com es mostra a continuació:

Funcionalitats Avançades

jsoup suporta processament HTML professional:

  • Gestió de formularis: Envia dades POST:

    Enviament de Formulari

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

    Configuració de Proxy

    
        Document doc = Jsoup.connect("https://target.com")
            .proxy("127.0.0.1", 8080)
            .get();
        
    
  • Manipulació DOM: Modifica l'estructura HTML:

    Canvis DOM

    
        doc.select("div.ads").remove(); // Elimina tots els anuncis
        doc.select("h1").attr("class", "header"); // Afegeix classe CSS
        
    

jsoup vs. HTMLUnit

Diferences clau:

  • Enfocament: jsoup analitza HTML estàtic; HTMLUnit simula navegadors (execució JavaScript)
  • Velocitat: jsoup és més ràpid per a anàlisi HTML pur
  • Estil API: jsoup usa selectors CSS; HTMLUnit imita Selenium
  • Casos d'ús: jsoup per scraping; HTMLUnit per proves de pàgines dinàmiques
  • Dependències: jsoup no en té; HTMLUnit requereix biblioteques addicionals

Conclusió

jsoup és l'eina definitiva per a desenvolupadors Java que treballen amb HTML. Ideal per:

  • Web scraping: Extreu dades de qualsevol lloc web
  • Neteja de dades: Sanititza i normalitza HTML
  • Anàlisi de contingut: Analitza feeds RSS o arxius web
  • Proves: Verifica l'estructura HTML en aplicacions

Amb llicència MIT i API intuïtiva, jsoup és l'opció principal per a processament HTML en Java.

Productes Similars

 Catalan