[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Estrazione di dati da email



Il mar, 2002-04-09 alle 12:37, linux.anc@email.it ha scritto:
> Ciao
> [snip[
> > > > > meno di non considerare buona una perdita consistente di dati ?
> > > > 
> > > > la cosa migliore sarebbe una XSLT che processi l'HTML e produca il TXT
> > > > (quell'html non e` poi cosi' malvagio, dopo tutto). pero` non sono a
> > > > conoscenza di nessuno script che lo faccia. 
> > > Non e' possibile. XSLT richiede un imput ben formato (XML), HTML non lo
> > > e', pensa ad esempio al tag <br>, che in HTML e' regolare, mentre in XML
> > > non lo e'...
> > 
> > XSLT si applica ad un albero DOM e se leggi attentamente il testo della
> > specifica del W3C scopri che DOM vale anche per HTML. la libxml2 e'
> > perfettamente in grado di fare i parsing di un file HTML (purche' non
> > contenga errori, come un tag <td> non chiuso), poi puoi processarlo con
> > la libxslt1. vedi anche i comandi xsltproc e xmlshell.
> Esattamente, ma html _contiene_ tag non chiusi (a meno che chi lo scrive
> si preoccupi di controllare accuratamente il tutto), ma lo standard HTML
> accetta tag del genere <BR> che, invece un DOM per formattato non puo'
> accettare (aperto e non chiuso). 

allora, visto che continui a battere sui tasti come una scimmia
impazzita invece di pensare (od andare a leggere gli standard del w3c),
per favore fai attenzione alla frase seguente.

* * * html ben formato != tutti i tag chiusi * * *   

chiaro? ok, andiamo avanti... un parser html (come quello presente nella
libxml2) e' *perfettamente* in grado di produrre un albero dom a partire
da un file html con i tag aperti. in effetti, la definizione (nel DTD)
di <br> *specifica* che deve essere aperto. e <p> viene consideramo
*implicitamente* chiuso al prossimo tag di un certo tipo.

> Io non so se qualche buonanima ha implemetato una liberia che preveda
> queste eccezioni (nel senso XML), comunque se provi a gestire tramite
> xslt un html 9 volte su 10 hai casini.

perche' e' html sbagliato. se segue il dtd il problema non sussiste.

se ancora non mi credi, ti mando la xslt che esegue il parsing dei
risultati di google, senza alcun problema.

-- 
Federico Di Gregorio
Debian GNU/Linux Developer & Italian Press Contact        fog@debian.org
INIT.D Developer                                           fog@initd.org
                             Best friends are often failed lovers. -- Me

Attachment: signature.asc
Description: PGP signature


Reply to: