Visualizzazione stampabile
-
Parsing html
Salve a tutti ragazzi!sono alle prime armi con la programmazione con android e sto leggendo un libro che sembra promettere molto bene "Hello Android"..ora volevo realizzare una applicazione che prenda dei dati da un sito web,ho letto in giro che questo si fa tramite il parsing delle pagine html,però sinceramente non ho capito bene di cosa si tratti..premetto che con java un pò me la cavo in quanto ho sostenuto un esame all'università,quindi diciamo conosco le basi,se qualcuno potrebbe indicarmi una guida per newbie o farmi capire come funziona questa procedura per prendere dati da pagine web mi farebbe un grosso piacere :p
Grazie a tutti ragazzi;)
-
Re: Parsing html
Ciao, io ho affrontato lo stesso problema e l'ho risolto usando HTML cleaner ovvero delle api che ti aiutano nel parsing. A ogni modo c'è il forum anddev.it che tratta approfonditamente di programmazione. Moderatori se non potevo fare questa "pubblicità" editate pure
Sent from my HTC Magic using Tapatalk
-
Quote:
Originariamente inviato da
bombolo88
ora volevo realizzare una applicazione che prenda dei dati da un sito web,ho letto in giro che questo si fa tramite il parsing delle pagine html,però sinceramente non ho capito bene di cosa si tratti..
Grazie a tutti ragazzi;)
Dunque, puoi muoverti così:
1- Recuperi l'HTML che ti serve con una qualsiasi classe java che vada sul web. Questo codice, per esempio, infila l'HTML recuperato a "address" in un InputStream
2- Trasformi l'InputStram in una classe comoda per fare del parsing, tipo la BufferReader (se sei un programmatore Java sarai abituato a queste stramaledette matrioske di stream ;)) In questo modo puoi gestire il file linea per linea che spesso è comodo.
Il Parsing in verità è un mondo... JAVA possiede le sue classi per farlo, non è certo il linguaggio più comodo per queste attività (ma te lo dice un perlista :-P) ma comunque ha un engine potente come qualsiasi altro linguaggio. Il modo migliore è invocare, sulla String della linea, il metodo matches che accetta in ingresso una stringa che è poi una regexp. In questo modo puoi individuare una linea che contiene quello che ti interessa.
Per un lavoro più di fino puoi guardare le classi Matcher e Pattern.
In questo esempio (che è una App che sto effettivamente facendo) recupero l'immagine che viene richiamata a un determinato path all'interno dell'HTML e la "spezzo" in nome immagine e estensione.
Per fare del parsing di un certo livello hai bisogno di una conoscenza più o meno base delle regexp (la documentazione in rete e non è sterminata), a parte questo le classi che ti ho indicato (e i relativi references, ovviamente) dovrebbero avere tutte le info di cui hai bisogno. Ovviamente non posso addentrarmi di più nel tuo problema senza conoscerlo a fondo... se hai bisogno di altro aiuto siam sempre qui. :cool:
-
Grazie mille ragazzi siete fantastici!!Appena inizio con l'applicazione ed arrivo ad implementare questa cosa mi faccio sentire,per ora grazie adesso so come iniziare!!!!:):)