Hej,
chciałbym sparsować stronę do DOM Object, ale nie wiem jak się za to zabrać...
Do tej pory połączyłem się ze stroną, sprawdziłem czy dostaję status: 200 - i następnie jeśli strona odpowiada poprawnie, to zapisuję jej zawartość do Stringa.
Kod wygląda tak:
public void checkConnection() throws IOException {
URL url = new URL(urlLink);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.connect();
int code = connection.getResponseCode();
if (code == 200) {
System.out.println("Nawiązano poprawnie połączenie. Kod: " + code);
setConnected(true);
}
if (connected == true) {
BufferedReader br = new BufferedReader(new InputStreamReader((connection.getInputStream())));
StringBuilder sb = new StringBuilder();
String output;
while ((output = br.readLine()) != null) {
sb.append(output);
}
bodyContent = sb.toString();
System.out.println(bodyContent);
Pattern r = Pattern.compile("(<td class=\"offer \">)(.*)(<\\/td>)");
Matcher m = r.matcher(bodyContent);
if (m.find()) {
System.out.println("Found value: " + m.group(0));
//System.out.println("Found value: " + m.group(1) );
//System.out.println("Found value: " + m.group(2) );
} else {
System.out.println("NO MATCH");
}
// http://stackoverflow.com/questions/457684/reading-html-file-to-dom-tree-using-java
// http://nekohtml.sourceforge.net/
}
}
Teraz chciałbym, aby strona została sprasowana do DOM, później chcę z niej wyciągać informacje które mnie interesują. Jak widzicie zacząłem używać REGEX'a, ale wolałbym się oprzeć od DOM, później będzie prościej.
Jako totalnie zielony i dopiero się uczę, dlatego proszę o wyrozumiałość i pomoc :)
P.S. Trafiłem na coś takiego:
Z góry dziękuję,
Codexter