jsoup: A Java HTML elemző

Scrapelj, tisztítsd és manipuláld a HTML-t jQuery-szerű egyszerűséggel Javaban

Mi az jsoup?

A jsoup egy könnyű, de hatékony Java könyvtár, amely valós HTML-feldolgozásra készült. Egyszerű API-t kínál HTML elemzéshez URL-ekből, fájlokból vagy stringekből, adatok kinyeréséhez és manipulálásához DOM bejárás, CSS szelektorok és modern HTML5 módszerek segítségével. Ideális web scrapinghez, adatkinyeréshez és HTML tisztításhoz, a jsoup elegánsan kezeli a hibásan formázott markupot - pont mint egy böngésző.

A regex megközelítésekkel ellentétben a jsoup tiszta objektummodellt kínál jQuery ihlette metódusokkal, leegyszerűsítve olyan feladatokat, mint űrlapküldés, attribútum módosítás és szövegkinyerés. Függőségek nélkül és MIT licenszel, a Java fejlesztők kedvence, akik megbízható HTML-feldolgozásra van szükségük.

A jsoup fő előnyei:

  • Valós HTML kezelés: Rendetlen HTML-t elemzi, mint a böngészők
  • jQuery-szerű szintaxis: Ismerős CSS szelektorok (pl. doc.select("div.content"))
  • Scraping-barát: Követi az átirányításokat, kezeli a sütiket és küld űrlapokat
  • Platformfüggetlen: Tiszta Java, natív függőségek nélkül
  • Biztonság: Beépített XSS védelem és HTML tisztítás

Tökéletes adatbányászatra, web automatizálásra és tartalomelemzésre.

GitHub

GitHub statisztika

Név:
Nyelv:
Csillagok:
Villák:
Engedély:
Az adattár legutóbbi frissítése:

Miért válasszuk a jsoup-ot?

  • Egyszerűség: Intuitív API CSS szelektor támogatással
  • Megbízhatóság: Aktívan karbantartott 2009 óta
  • Teljesítmény: Optimalizált streamingre és nagy dokumentumokra
  • Rugalmasság: Működik töredékekkel, fájlokkal vagy élő URL-ekkel
  • Tiszta kimenet: Szépen formázza és újraformázza a HTML-t

Telepítés

A jsoup hozzáadása Maven vagy Gradle segítségével:

Maven



    org.jsoup
    jsoup
    1.17.2


Gradle


implementation 'org.jsoup:jsoup:1.17.2'

Rendszerkövetelmények: Java 8+

Kódpéldák

Gyakorlati jsoup használati példák:

HTML elemzés jsoup-pal

1. példa: Dokumentum elemzése stringből

Ha HTML tartalommal rendelkezik egy Java stringben, és elemezni szeretné a tartalmát vagy módosítani azt, a jsoup mindezt néhány kódsorral megoldja.

A parse(String html, String baseUri) metódus a bemeneti HTML-t új Documenttá alakítja. A baseUri paraméter segít a relatív URL-ek abszolút URL-ekké alakításában, és meg kell egyeznie annak az URL-nek, ahonnan a dokumentum származik. Ha ez nem releváns, vagy ha a HTML <base> elemet tartalmaz, használhatja az egyszerűbb parse(String html) metódust.

2. példa: Elemek keresése CSS szelektorokkal

Elemek kereséséhez vagy manipulálásához CSS szelektorok használatával. Elemezze és manipulálja közvetlenül a HTML stringet:

3. példa: Elem HTML-jének módosítása

Egy elem HTML-jét kell módosítania. Használja az Element HTML setter metódusait az alábbi példakód szerint:

Haladó funkciók

A jsoup támogatja a professzionális HTML-feldolgozást:

  • Űrlapkezelés: POST adatok küldése:

    Űrlapküldés

    
        Connection.Response res = Jsoup.connect("https://example.com/login")
            .data("username", "user", "password", "pass")
            .method(Connection.Method.POST)
            .execute();
        Document dashboard = res.parse();
        
    
  • Proxy támogatás: Scrapelés proxyn keresztül:

    Proxy beállítás

    
        Document doc = Jsoup.connect("https://target.com")
            .proxy("127.0.0.1", 8080)
            .get();
        
    
  • DOM manipuláció: HTML struktúra módosítása:

    DOM változtatások

    
        doc.select("div.ads").remove(); // Eltávolítja a reklámokat
        doc.select("h1").attr("class", "header"); // CSS osztály hozzáadása
        
    

jsoup vs. HTMLUnit

Főbb különbségek:

  • Fókusz: A jsoup statikus HTML-t elemzi; a HTMLUnit böngészőket szimulál (JavaScript végrehajtás)
  • Sebesség: A jsoup gyorsabb tiszta HTML elemzéshez
  • API stílus: A jsoup CSS szelektorokat használ; a HTMLUnit a Seleniumot utánozza
  • Használati esetek: jsoup scrapinghez; HTMLUnit dinamikus oldalak teszteléséhez
  • Függőségek: A jsoupnak nincsenek; a HTMLUnit további könyvtárakat igényel

Összegzés

A jsoup a végső HTML eszközkészlet Java fejlesztőknek. Ideális:

  • Web scraping: Adatkinyerés bármely weboldalról
  • Adattisztítás: HTML fertőtlenítés és normalizálás
  • Tartalomelemzés: RSS feedek vagy web archívumok elemzése
  • Tesztelés: HTML struktúra ellenőrzése alkalmazásokban

MIT licenszel és intuitív API-val, a jsoup a legjobb választás HTML-feldolgozáshoz Javaban.

Hasonló Termékek

 Hungarian