Newsgroup: it.comp.java
Titolo: come leggere il DOM di una pagina HTML?

Avrei bisogno di alcune indicazioni per capire come leggere il DOM di
una pagina 
HTML qualsiasi...tutto quello che ho trovato si riferisce a documenti
XML e i parser 
che si utilizzano per leggere questi file mi generano errori se provo a
leggere un file 
HTML. 
Ho visto che esistono diversi package che implementano le interfacce
proposte dal 
W3C, ma non riesco a capire quale faccia al caso mio, e come
utilizzarlo.
Qualcuno di voi mi sa dare qualche indicazione per iniziare?
Grazie
Laila

Spero di non dire ca***te ... in caso contrario correggetemi!
Una pagina HTML *dovrebbe* essere anche un file XML ... il problema e' che
le pagine HTML spesso non sono well-formed. Per essere well-formed un
documento XML, semplificando molto, deve avere un tag di chiusura in
corrispondenza di ogni tag di apertura.
Questo significa che non puoi parsare un file HTML che ad esempio abbia dei
<BR> non chiusi ... quindi il 99% dell'HTML sul web!
Ciao.


 corrispondenza di ogni tag di apertura.
E' esattamente per questo motivo che non posso utilizzare gli stessi
parser che si utilizzano per i file XML... 
Ma se non ho capito male ci deve essere anche un modo per leggere il dom
di un file HTML. Infatti le specifiche del W3C si parla sia di documenti
XML sia di documenti HTML.
Il problema è che ho trovato diversi esempi su come effettuare il parse
di file XML e zero esempi sui file HTML :( 
Ciao

 Una pagina HTML *dovrebbe* essere anche un file XML
No, anche se l'HTML e' perfettamente well-formed, non e'
XML. Per dirne una, manca la dichiarazione <?xml..>
e i tag singoli (<br>) non sono terminati da /.
(BTW, puoi usare HTML Tidy per "migliorare" un documento HTML
per trasformarlo in uno valido, nel caso di errori semplici).
Esiste pero' XHTML, che incorpora esattamente le (relativamente 
poche) modifiche ncessarie. Chiaro che se devi fare il parsing
di HTML, non aiuta.
Di conseguenza DOM per HTML (intendendo XML/DOM, e il relativo binding
per Java in org.w3c.dom.*) non ha senso.
In teoria e' possibilissimo pensare ad un DOM (intendendo "object
model"), per HTML, in pratica non mi viene in mente nulla (forse in
qualche libreria per JavaScript trovi qualcosa, ma e' alla lontana). 
-- 
Life's something u don't get out alive..
ObjectZone - 
http://space.tin.it/computer/csadun

Scusatemi se mi intrometto :-)
Hai provato a dare un'occhiata a
javax.swing.text.html.parser?
Magari potrebbe fare a caso tuo.


 
Perchè dici che non ha senso? 
Esiste anche il binding per Java in org.w3c.dom.html.* specifico per
documenti html
la domanda è... qualcuno ha già implementato queste interfacce?
e ancora...Come faccio a generare un oggetto di tipo
org.w3c.dom.html.HTMLDocument leggendo un file .html?
Ciao
Laila

Guarda qui...
http://tertius.org/software/javahtml/
a me č servito e mi ha risolto i problemi
-- 
Posted from 
flat-p01-m004.aruba.it
 [62.149.161.6] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 XML. Per dirne una, manca la dichiarazione <?xml..>
Che, per fare il pignolone, e' opzionale. Se leggi le "annotated" specs,
si sono giustamente pentiti di questa decisione, ma tant'e'... in
effetti e' meglio comunque trattarlo come obbligatorio, e' piu'
consistente con tutto il resto delle specifiche.
ciao
uL