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

jsoup: De Java HTML-parser

Scrape, reinig en manipuleer HTML met jQuery-achtige eenvoud in Java

Wat is jsoup?

jsoup is een lichtgewicht maar krachtige Java-bibliotheek ontworpen voor het werken met real-world HTML. Het biedt een soepele API voor het parsen van HTML van URL's, bestanden of strings, het extraheren en manipuleren van data met DOM-traversal, CSS-selectors en moderne HTML5-methoden. Ideaal voor webscraping, data-extractie en HTML-sanitizing, jsoup gaat net als een browser om met slecht gevormde markup.

In tegenstelling tot raw regex-benaderingen biedt jsoup een schoon objectmodel met jQuery-geïnspireerde methoden, wat taken zoals formulierinzending, attribuutmodificatie en teksextractie vereenvoudigt. Zonder afhankelijkheden en met MIT-licentie is het een favoriet onder Java-ontwikkelaars die betrouwbare HTML-verwerking nodig hebben.

Belangrijkste voordelen van jsoup:

  • Real-world HTML-verwerking: Parseert rommelige HTML zoals browsers doen
  • jQuery-achtige syntax: Bekende CSS-selectors (bijv. doc.select("div.content"))
  • Scraping-vriendelijk: Volgt redirects, handelt cookies af en dient formulieren in
  • Cross-platform: Pure Java zonder native afhankelijkheden
  • Beveiliging: Ingebouwde XSS-preventie en HTML-sanitizing

Perfect voor datamining, webautomation en contentanalyse.

GitHub

GitHub-statistieken

Naam:
Taal:
Sterren:
Vorken:
Licentie:
De opslagplaats is voor het laatst bijgewerkt op

Waarom jsoup kiezen?

  • Eenvoud: Intuïtieve API met CSS-selector-ondersteuning
  • Betrouwbaarheid: Actief onderhouden sinds 2009
  • Prestaties: Geoptimaliseerd voor streaming en grote documenten
  • Flexibiliteit: Werkt met fragmenten, bestanden of live URL's
  • Schone output: Mooi afgedrukte en hervormatte HTML

Installatie

Voeg jsoup toe via Maven of Gradle:

Maven



    org.jsoup
    jsoup
    1.17.2


Gradle


implementation 'org.jsoup:jsoup:1.17.2'

Systeemvereisten: Java 8+

Codevoorbeelden

Praktische use cases voor jsoup:

HTML-parsing met jsoup

Voorbeeld 1: Een document parsen vanuit een string

Als je HTML in een Java-string hebt en je wilt de HTML parsen om de inhoud te krijgen of te wijzigen, kan jsoup dit met slechts een paar regels code.

De methode parse(String html, String baseUri) converteert de input-HTML naar een nieuw Document. De baseUri parameter helpt relatieve URL's om te zetten naar absolute URL's en zou moeten overeenkomen met de URL waar het document vandaan kwam. Als dit niet relevant is, of als de HTML een <base> element bevat, kun je de eenvoudigere methode parse(String html) gebruiken.

Voorbeeld 2: CSS-selectors gebruiken om elementen te vinden

Je wilt elementen vinden of manipuleren met CSS-selectors. Parseer en manipuleer een HTML-string direct:

Voorbeeld 3: De HTML van een element wijzigen

Je moet de HTML van een element wijzigen. Gebruik de HTML-settermethoden in Element zoals getoond in de volgende voorbeeldcode.

Geavanceerde functies

jsoup ondersteunt professionele HTML-verwerking:

  • Formulierafhandeling: POST-data verzenden:

    Formulierinzending

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

    Proxyconfiguratie

    
        Document doc = Jsoup.connect("https://target.com")
            .proxy("127.0.0.1", 8080)
            .get();
        
    
  • DOM-manipulatie: HTML-structuur wijzigen:

    DOM-wijzigingen

    
        doc.select("div.ads").remove(); // Verwijder alle advertenties
        doc.select("h1").attr("class", "header"); // Voeg CSS-klasse toe
        
    

jsoup vs. HTMLUnit

Belangrijkste verschillen:

  • Focus: jsoup parseert statische HTML; HTMLUnit simuleert browsers (JavaScript-uitvoering)
  • Snelheid: jsoup is sneller voor pure HTML-parsing
  • API-stijl: jsoup gebruikt CSS-selectors; HTMLUnit bootst Selenium na
  • Use cases: jsoup voor scraping; HTMLUnit voor het testen van dynamische pagina's
  • Afhankelijkheden: jsoup heeft geen; HTMLUnit vereist extra bibliotheken

Conclusie

jsoup is het ultieme HTML-toolkit voor Java-ontwikkelaars. Ideaal voor:

  • Webscraping: Data extraheren van elke website
  • Datacleaning: HTML sanitiseren en normaliseren
  • Contentanalyse: RSS-feeds of webarchieven parsen
  • Testen: HTML-structuur verifiëren in apps

Met MIT-licentie en intuïtieve API is jsoup de topkeuze voor Java-gebaseerde HTML-verwerking.

Vergelijkbare Producten

 Nederlands