Hallo,
JS manipuliert ja bekanntlich HTML Elemente. Wenn ich mittels einer üblichen Vorgehensweise (siehe Code) eine Seite auslesen möchte bekomme ich nur den ursprünglichen HTML Code, also zu der Zeit in dem noch kein JS ausgeführt wurde. (richtig?)
Wie bekomme ich den "letzten Zustand" der Seite, also zu der Zeit nachdem JS ausgeführt wurde?
(Um es zu verdeutlichen ruft man eine Seite die JS enthält auf und sieht sich den Quelltext z.B. per Firefox an und vergleicht ihn mit dem Code den man bekommt wenn man den Webentwicklermodus "Untersuchen" benutzt -> diesen Code benötige ich)
Wenn möglich, wie?
Vielen Dank
JS manipuliert ja bekanntlich HTML Elemente. Wenn ich mittels einer üblichen Vorgehensweise (siehe Code) eine Seite auslesen möchte bekomme ich nur den ursprünglichen HTML Code, also zu der Zeit in dem noch kein JS ausgeführt wurde. (richtig?)
Wie bekomme ich den "letzten Zustand" der Seite, also zu der Zeit nachdem JS ausgeführt wurde?
(Um es zu verdeutlichen ruft man eine Seite die JS enthält auf und sieht sich den Quelltext z.B. per Firefox an und vergleicht ihn mit dem Code den man bekommt wenn man den Webentwicklermodus "Untersuchen" benutzt -> diesen Code benötige ich)
Java:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
public class Main {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
final String userAgent = "User-Agent";
final String userAgentDetails = "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2";
InputStream htmlcodeStream = null;
URLConnection uc;
BufferedReader bufferedReader;
StringBuilder stringBuilder;
String line = null;
try {
URL urlBwin = new URL("dieUrlderSeite);
uc = urlBwin.openConnection();
uc.setRequestProperty(userAgent, userAgentDetails);
htmlcodeStream = uc.getInputStream();
bufferedReader = new BufferedReader(new InputStreamReader(htmlcodeStream));
stringBuilder = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line + "\n");
}
System.out.println(stringBuilder.toString());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Wenn möglich, wie?
Vielen Dank