HTML parsing / Java/Android

Tags:    java

Jeg er ved at lave en lille app som kan gemme mit skema fra skolen. Desværre ved jeg ikke helt hvordan jeg skal parse mit dokument.

Jeg har lavet et lille stykke kode som virker fortrinligt til at hente mit skema fra nettet, men som sagt skal jeg have filtreret det rod der er.
Fold kodeboks ind/udJava kode 



Altså jeg poster informationerne (dog i en GET URL da den accepterer dette, og POST virkede omstændigt i java).

Min plan er senere at porte det til Android så jeg har skemaet på mobilen. Jeg er helt ny i java, hvilket er grunden til jeg tænkte det ville være nemmest at lave det i rent java først end at gå igang med android api'en.

Har kigget på noget DOM men synes ikke rigtig jeg kan finde noget. Et link til noget dokumentation som forklarer processen ville også være super.

Selve koden som bliver sendt tilbage er sådan her:
Fold kodeboks ind/udHTML kode 


Planen er jo at jeg selv kan smide det i en tabel, jeg kan bare ikke lige overskue hvordan jeg skal få skidtet splittet op.

Håber nogen kan være behjælpelig.



3 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Det du søger er en parser som flår din input stream op i en dom datastruktur så du kan løbe igennem denne og hente de tekster (værdier) du gerne vil læse.

Du kan se denne tråd på stackoverflow hvor der er flere gode løsninger både ved at bruge eksterne Libraries eller ved at bruge java's egne xml package.

http://stackoverflow.com/questions/457684/reading-html-file-to-dom-tree-using-java



Indlæg senest redigeret d. 11.01.2011 22:32 af Bruger #13429
Tak for svaret. Jeg kom selv frem til at JTidy kunne gøre det, men ikke helt hvordan. Det er jo også en executeable fil (eller java-exe) og hvidt jeg kunne forstå blev den kørt ved siden af med parametre. Altså Jtidy.jar -arg1 bla bla -arg2 bla bla.

Du skulle vel ikke vide hvor jeg kan finde et eksempel på hvordan man bruger det til at parse med?




http://jtidy.sourceforge.net/howto.html - som du ser nederst på siden her er der et JTidy API. Det kan du bruge et dit JAVA program. Prøv at downloade det og se om der er mere dokumentation om det et sted



t