Parsing html con Jsoup

di il
2 risposte

Parsing html con Jsoup

Salve sto facendo il parsing di una pagina html utilizzando la libreria Jsoup però siccome è la prima volta sto trovando molte difficoltà.

In particolar modo dovrei estrapolare da questo sito *****
i nomi delle regioni.

Io ho scotto in questo modo:

Document doc = Jsoup.connect("https://**********").get();
Elements provincia = doc.select("select[id=region]");

for(Element e:provincia) {
System.out.println(e.html());
}

Però quando stampa gli elementi, mi stampa pure i vari tag, come potrei risolvere questo problema?
Grazie mille per l'aiuto.

2 Risposte

  • Re: Parsing html con Jsoup

    Ciao! Non conosco JSoup, ma vedo che è un parser DOM. Di conseguenza crea l'albero della pagina HTML.
    Andando a guardare sul sito, noto che i nomi delle regioni sono il testo contenuto all'interno del tag "<option>", il quale è dentro "<select>". Quello che dovresti chiedere tu, quindi, è "select[id=region]/option/text()". Bisogna, però, vedere se Jsoup supporta questo "linguaggio"
  • Re: Parsing html con Jsoup

    In alternativa, una volta che fai "doc.select("select[id=region]");" ottieni il tag <select>. Di conseguenza quello che ti interessa sono tutti i sui figli <option>. Per ognuno di loro, inoltre, ti interessa il figlio, ovvero il testo che indica il nome della regione.
    Per cui puoi usare i metodi children() e child(index) di Element (vedi qua jsoup API)
Devi accedere o registrarti per scrivere nel forum
2 risposte